Agreements

still in progress but I wanted to show where I am. most of the discussed functionality is now there in some form but needs polish. 
I'm not sure if these may be recreating functionality that may exist elsewhere (cancan? devise?). I didn't see anything but you may be more familiar with the libraries and what they offer.