appoinment always validates that you cannot change the user_id on it once it has been set via validation of #is_available
user #persist_stripe_information just uses the update_attribute method
rename overlap_exists in appointments to just be called generic unbookable, since it will show all errors in appointment saving
small updates to charges_controller#create using what i learned from VeryMoved
updates to user#can_book?(appointment_id) method, returns a dictionary. TO BE REFACTORED. the appointments controller uses that dictionary, so that we can see if it is bookable and if not, get the errors messages
bug squash extra comma after statement descriptor, also appointment not an instance variable
update rails_admin config for appointment to show stripe charge id if current user is an admin
update to custom stripe checkout
appointments controller #show and dummy view