Get rid of redundant calls to state transition hooks.

All the state transition hooks are handled in one place, with the sole exception
of the on_proposed hook.
allow role override by class and role, with tests
some documentation to support role class definitions
Merge pull request #679 from VictorLowther/pull-req-master-3ad87c72b743e6a5474ec33caf2b57249b136059

https://github.com/crowbar/barclamp-crowbar/pull/679

Merged by devtool for cloudedge
Merge pull request #680 from cloudedge/pull-req-master-01b3ea25901a0e494377a180af1bb08f0f02caef

https://github.com/crowbar/barclamp-crowbar/pull/680

Merged by devtool for VictorLowther
refactor out config
deployment role REST POST test
Adding Tests: add node to deployment, check state
Merge pull request #681 from cloudedge/pull-req-master-e3a6afc5b3018b71f086d37c25807e60a9327726

Adding Tests for DeploymentRole and Annealer [1/1]