@sandersonet A more generic edit contact view

Working on a more generic implementation of the ContactEdit view. Currently the view requires a model to only have one contact and for that contact to have a very specific structure. I implemented defaults in such a way so that it should be backwards compatible. 

I also changed the methods to use the more standard camelCase instead of underscore naming conventions.

Let me know what you think before merging. I still need to do some more testing.