uc-74 Handle database error + addition of fb client helper

RFCR @garthwebb & @lizlux 

Handles database errors on insertion of a user -> fb mapping that already exists.

Also 
* Did some refactoring of controller codes and moved common functionality to a helper.
* Removed duplicated methods (probably caused by multiple merges)

https://wikia-inc.atlassian.net/browse/UC-74

@garthwebb I thought about placing this function in the model, but having a static method there is a bad idea because it will have to duplicate `save()`'s logic outside of object state.