Between called on state, not object itself
Add minitest gem to fix test runtime error with ruby 2.0

    undefined method `_run_suite' for class `Test::Unit::Runner
Travis CI: add configuration for Rails 4.0; try fix for minitest in edge
Revert "Add minitest gem to fix test runtime error with ruby 2.0"

This reverts commit 08584e571e9d5f8e40f2b73d1bc99b60878eb314.
Switch to pre 5.0.0 minitest
Fix #106, inherit TransitionHalted etc. from StandardError instead of Exception
Debug travis CI tmp dir issue
Debug travis CI tmp dir issue
vis CI tmp dir issue 3
Go back to ruby-graphviz 1.0
Go back to graphviz ~> 1.0
Set ruby-graphviz version to ~> 1.0.0
Fix syntax in Gemfile.rails-4.0
Add protected_attributes gem to fix the build for Rails 4
Fix Gemfile for edge build
Switches to storing a State's events in collections indexed by event name.

Previously:
  {:name => #<Event:...>, :other_name => ...}

Now:
  {:name => [#<Event:...>, #<Event:...>], :other_name => ...}
Adds conditional transitions.

Conditions are procs or lambdas added to events, like so:

  state :off
    event :turn_on, :transition_to => :on,
                    :if => proc { |device| device.battery_level > 0 }
    event :turn_on, :transition_to => :low_battery,
                    :if => proc { |device| device.battery_level > 10 }
  end

When calling a `device.can_<fire_event>?` check, or attempting a
`device.<event>!`, each event is checked in turn:

* With no :if check, proceed as usual.
* If an :if check is present, proceed if it evaluates to true, or drop
  to the next event.
* If you've run out of events to check (eg. battery_level == 0), then
  the transition isn't possible.
Update documentation to fix #108
Merge pull request #109 from damncabbage/conditional-transitions_for-upstream

Adds (optional) condition checks to Event transitions.
Documentation for #109 Conditional event transitions