first cut at adding a noop model/policy to Hanlon
refactored from 'noop' model/policy to 'discover_only' and added second noop model/policy ('boot_local') to use when adding existing nodes
Fixes finite state machine for boot_local model
Adds tests for edge cases that shouldn't be allowed with noop policies/models
(and throws sensible errors), specifically:

* throws an error if a user attempts to create a noop model (either a boot_local
or discovery_only model) with an associated image (previously the image UUID
wasn't required but a user could include one if they wanted to)
* throws an error if a user attempts to create a noop policy (either a boot_local
or discovery_only policy) with an associated broker (previously this was allowed,
even though the idea of a noop policy/model is that the node will be added to
the Hanlon node list but will not be changed by Hanlon)

This should clean up the last couple of issues that might crop up with the
PR associated with this commit.
Cleans up previous commits so that updates are handled properly (they weren't in earlier commits, only the adds were)
Merge pull request #175 from tjmcs/tb/add-no-op-models

Fixes #174 (Add noop models to Hanlon)