lots of improvments
cleanup
separating contact info in it's own model
clean up