Merge pull request #44 from nessche/further-improvements

Further improvements
Update changelog and readme for version 0.3.0 release.
Remove period from the credit titile in readme.
Remove excess whitespace in event_map_spec.rb
Create a new controller instance for every event fired.

This removes the old singleton controller pattern to eliminate the
chance of events being criss crossed during actions that perform
background work. The problem was first mentioned in issue #31.

The DataStore class will need to be enhanced to provide the same
benefits that were previously offered by the singleton controllers.
Call #initialize_session on each new controller instance.

I am adding this in temporarily for backwards compatibility. Now
that the singleton controller pattern has been deprecated this
would likely be better off being replaced by a decent before and
after filter system similar to Rails controllers.
Clean up whitespce in connection_adapters_spec.rb
Begin splitting DataStore out into Controller/Connection/Global.

The data store has been replaced with three independent stores.
Only two are currently implemented.

Each connection has a data store that will act similar to the Rails
session store.

Each controller class has it's own store that can be used similar to
class instance variables. The controller data stores are managed
by the new `ControllerFactory` class which handles instantiating and
preparing controller objects during event execution.

The global data store still needs to be implemented.

I still need to figure out a means of pulling associated data out
of the different stores in an easy fashion similar to the
`#each_<key>` method provided by the original `DataStore`.

I would also like to implement a Redis backed data store to be used
by the controller store when synchronization between servers is
enabled. This would allow the data store to operate seemlessly
between server instances.
Don't start the EM run loop while running `Trigger Matcher` specs.

The 'Trigger Matcher` specs can be run synchronously. Disabling the
starting and stopping of the event machine run loop speeds up the
tests dramatically, cutting a few seconds off of the suite execution
time.
Update DataStore with the ability to collect values from all stores.
Add deprecation notice for #initialize_session
Add real logging support.
Finish logging support and add some spec coverage for it.
Move settings into the new Configuration class.
Require the configuration class from websocket-rails.rb
Use #each_with_object in data_store #collect_all
Require bigdecimal/util for converting Float#to_d
Access redis_options through WebsocketRails.config in Synchronize#synchronize
Clean up data store specs
Refactor rake tasks.

Add better descriptions to the tasks.

Eliminate duplication in the standalone warning.