Make the SIGALRM timeout handling more generic.

Pulled out into a mixin, tests added. This should hopefully
make it easier to produce a less naive mechanism for timeouts
if we go the JRuby + threads or eventmachine approaches later
Rename the option parser under orc namespace.

We're going to want to distribute things as a gem, and ergo we really want
to move the classes under a specific namespace, so that someone could
reuse / embed the orc code. Also Orc::Util::OptionParser is more consistent
generally than Util::OrcOptionParser
Remove Orc::Engine, as it was just a shell.

All the tests have been moved to the live model creator.
This now means that the live model creator is super-badly named now,
it needs cleaning up + additional tests.
Cleanup deploy_client + spec

Tighten up deploy_client validation - the parameters are required
and defaults will never work.

Remove duplicate code from spec, and make it pass in the app/env
always as now needed by the code
Remove the logger duplication.

There was no point in having two confusingly similarly named loggers used in
different parts of the codebase, with slightly different APIs, so
I've combined them into a single file / namespace.

Also removes logging methods which were unused.