Allow comparison with enum classes

This addresses the issue of using enums in a case statement and also
makes the API more predictable.
Revert "Removes support for Ruby < 2.0"

This reverts commit 9db4172090adc39c8c8d213f75a7ecfe2049ff01.

Conflicts:
	lib/classy_enum/base.rb

After thinking about this for a bit and looking at some of the recent
surveys on Ruby usage, it seems like a lot of people are still using
1.9.3. Since there's not a huge benefit to dropping support for 1.9.3,
it will stay for now.
Updates spec to ensure the enum option is covered

I thought about removing this in favor of class_name, but it's been
around for so long that it will cause some upgrade headaches for people
without much benefit.
Merge branch 'version-4.0'
Updates README to reflect supported Ruby versions

[ci skip]
Bumps version to 4.0.0.beta1

[ci skip]
Fixes support for ActiveModel::Dirty

This has always been broken, but I was waiting to see how it was
addressed in ActiveRecord::Enum before fixing to make sure I had
something that was more future-proof. The fix does not work in Rails
3.2 or 4.0, so it is disabled in ActiveRecord <= 4.0 which seems like
a good compromise.

Previously when using dirty attribute methods, it was hard to predict
whether you'd get the string value or the enum class instance. Now it
will always return the enum class instance for any of the attribute
change methods.