Edit community profile

The following PR depends on #27, #29 and #30.

It implements the functionality of editing community profile. 
is it a 200, or a 201?