I will give you the outline for a "Edit Profile Page". This will be linked from the dashboard, under the photo. On this page, people will be able to:
(1) Add a header, (2) Add a Photo, (3) Add About Data, [We need to add one field for "Current Location"] (4) Add more photos[I suggest 9 maximum photos.]
When the user completes the page, the information will be updated to the "Profile Page" The user should be able to edit his profile unlimited times.
However, if the user has signed up with Facebook his name, current location, and photo should be automatically inserted.