[#5] Use route name if no route provided in spec

- Simplify route specification by allowing the `route` key to be empty;
  if empty, defaults to the value of the `name` key.
[#5] Prepend the route with the command name

- If the route does not start with the command name, prepend it with the
  command name.
- Unless, of course, the route specification has the
  `prepend_command_to_route` flag toggled false.
[#5] Documentation and cleanup

- Documented new route prepending functionality.
- Updated examples to remove 'route' when possible, and/or to remove command
  prefix.
- Modified default route creation in `Application` to remove prefixes (help,
  autocomplete) and to disable prefixing (version).
Merge branch 'feature/5'

Close #5