Better documentation about API navigation and compatibility

This enhances the documentation to try and be clearer about where we do, and
do not, promise users compatibility information, as well as how to use the
navigation tools available.

Signed-off-by: Daniel Pittman <daniel@rimspace.net>
/svc/boot: produce proper errors when params are bad

If we get a request without params, or one where none of the params are in
the lookup criteria configured in match_nodes_on, we need to complain
cleanly.

Before this change, either kind of request would lead to an internal server
error. Now it leads to a HTTP status code of 400 and a log entry that a bad
request was made.
Change logging so that we send all logs through TorqueBox::Logger

This changes all logging so that it goes through TorqueBox::Logger and
establishes a few categories that seem useful in picking the logging apart.

Currently, it's not possible to change the log levels other than editing
JBoss configuration; see https://issues.jboss.org/browse/TORQUE-1179

There's also a couple minor issues with logging that should be addressed
upstream to make logging more user-friendly:
https://issues.jboss.org/browse/TORQUE-1177 and
https://issues.jboss.org/browse/TORQUE-1178

This fixes https://github.com/puppetlabs/razor-server/issues/93