Clean up usage

* Use raw strings.
* Hook usage into flag.
* Print banner to stderr as flag.PrintDefaults does.
* Use the cayley usage rather than the flag ussage when command is
  unknown.
* Simplify args handling.
Make usage cayley intro banner contextual

Only provide it when people run cayley without any other args.
Merge pull request #138 from kortschak/usage

Clean up usage