Add Sidekiq and Kafka. 

Also:
+ KafkaEvent to publish arbitrary info about models, still kind of a work in progress
+ ClassificationLifecycle management moved to a sidekiq worker
+ MultiKafkaProducer Module to abstract between jruby-kafka and poseidon. 

When running jruby you'll also need to use jbundler to manage Kafka libraries. 
what about putting the common functionality here with a yield then just `classification.transact!` or `classification.transact! { create_project_preference }`

``` ruby
update_seen_subjects
dequeue_subject
yeild if block_given?
publish_to_kafka
```