Get stoppable into the instance model
Move the exceptions into their own file and namespace.

I shot myself in the foot with Orc::Timeout initially being both a class and an exception, which
was dumb of me.. But to avoid me doing dumb things like that in future, I've moved the exceptions
into an Orc::Exceptions hierarchy, and an orc/exceptions.rb (as I can never remember they're
in namespace.rb).

I think this makes things a little more explicit and less confusing, but this may not be the
ruby way of doing things...
Move the un-implemented test around to be in the place where precedence is actually determined
Fix model naming consistency.

model/xxx_model is pointless duplication of naming. I've moved things under the Orc namespace
(for better distribution, as per 14c299) and removed the duplicte model from the file and
class names, so it's Orc::Model::XXXX
Rename the live_model_creator.

We've come full circle, and I've re-instated the application model as the thing which has the
instances. It's also the thing that knows how to resolve etc. Conceptually it could be nicer
if some of the logic was pulled back out (I'm unsure), however the internal data structures
we're using will need some refactoring first.