after_commit callback

As suggested by @zimbatm and discussed in https://github.com/aasm/aasm/issues/81 I implemented an `after_commit` callback which will be fired, **after** the transaction was successfully committed. The callback can be specified on any state:

```ruby
state :launching, :after_commit => :spawn_worker
```

Note that this is only available for `ActiveRecord`, since it's the only persistence implementation that supports transactions. The `after_commit` callback won't be fired for other persistence implementations.

I'm not happy with the specs I've added, and would like to have feedback on that (@alto).