Remove promote_branch! method from RemoteServer classes

should not be needed anymore
Make the promote method in BuildStrategy private

* Rename promote to update_branch
Step 1 of server aliases support
Move the RemoteServer classes to lib/
Fix the favicon path

Rails seems to be using /images/favicon.ico instead of the root now.
Add host and namespace columns to Repository + more

* Renamed Repository repository_name column to just name
* Restructure the remote server classes
* Deprecated the url column on Repository. Soon we will always be
  constructing the url based on the host, namespace, and name fields.
Add a Repository#lookup_by_url

To be used to lookup by host + namespace + name now that the url field
is deprecated.
Support a list of aliases
Merge remote-tracking branch 'public/rob+chris/server-aliases'

R: xaviershay jkingdon