Use Clearance to authenticate users.
User can sign up.
User can create account as Seller.
User can sign up as a Buyer.
Display error messages for invalid sign up.
User delegates methods to Buyer and Seller.