user can create their own contracts, save them, and share them with others