Add 'cd' command to enter a castle

The command will enter home/ if it exists, or else the repo root.

This requires the user to source a helper script (homeshick.{sh,csh})
that performs the 'cd' command within the context of the current shell.

If the main homeshick script is called with a 'cd' command, this just
displays the normal 'cd' help message, which indicates that homeshick
must be invoked via the helper script for the 'cd' command to work.
Move 'home/.homeshick' to 'bin/homeshick'

Also, move the helper scripts and update various paths as necessary.
Fix setup_homeshick() in the unit test setup
Add legacy symlink in old executable location
Add unit tests for cd command
Use source invocation method in all unit tests
Except when using expect, since we don't invoke a shell there
Fix #41. Allow numbers in github shorthand.
Kind of hard to create a unit test for this, since you can't suppress the http auth prompt.
Omitting for now.
Add more documentation for the cd command
Add links to command doc when it is mentioned
Add scenario for repos with no home/
Restructured README