Edit profile

Implemented S3 and have Carrierwave working, also added in new tests.
Use the new Ruby 1.9 hash syntax.