Allow custom domain names for applications

WARNING: This code is not production ready. Please do NOT merge this PR as-is!

This is just a start, allowing for early code reviews and comments. This is an attempt to fix #468

Tasks for completion of this entry
[ ] Removal of domain names once added
[ ] Validation of input (checkin if it is a valid hostname).
[ ] Allow wildcards as first part of the domain. This should be restricted as per Heroku's spec (https://devcenter.heroku.com/articles/custom-domains#wildcard-domains)
[ ] Use opdemand/deis-cookbook again, instead of my fork. Waiting for opdemand/deis-cookbook#54 to be merged
[ ] Authorization on adding / removing a domain name (currently this can be done if you have use_app perms on the applicaiton).
[ ] Write documentation
[ ] Last but not least Write Tests