Edit profile

Implemented S3 and have Carrierwave working, also added in new tests.
Indent access modifiers like `protected`.