New Features for pybreaker

I added the following features:
* new type of circuit breaker that is parameterized (so that it can handle data-driven external dependencies)
* a management interface so that it's easy to expose the circuit breakers to the ops department via the command line
* the ability to force a breaker open or closed (meaning that it will stay in that state indefinitely), for use by the operations team

I also migrated the state machine code to use the fluidity-sm library, which I felt made the actual state logic easier to understand, and more easily changed.