Add Enum.integer_values to return an array of all defined int values for an enum
Extract spec/support proto building to rake task, call from spec_helper
Add support for generating enum's with `option allow_alias = true`
Add Optionable module to provide option setting support for Enum
Use Enum.fetch instead of custom coercion outside of Enum class
First cut at an Enum API refactor

== Aliases

Extend Optionable module to get class-level option management. This
allows us to support the allow_alias protobuf option in libprotoc
v2.5.0.

Adds methods to return an array of EnumValue objects corresponding to a
given number "value".

== "Value"

The term "value" is used to mean multiple things in the Enum
implementation: 1) an EnumValue object, and 2) an integer commonly
called a tag number.

This cut attempts to use the term "number" for arguments when the arg
should be number-like, and use the term `enum_value` in methods and
comments when we are referencing the actual object type. All method
name changes are aliased to their old names.

Ideally EnumValue would not be separate from Enum. I'm not willing to
make that cut here, possibly in a future API refactor cut.
Merge branch 'master' into bj/enum-values
Rename enum methods from value -> number
Merge branch 'master' into bj/enum-values

Conflicts:
	Rakefile
Use sane names in Enum class

Get rid of all references to the word “value”. EnumValue’s are just
called enums now. “value” objects when referring to an integer number
are just now called tags. It’s not semantically correct, but there
isn’t a semantically correct name and “tag” is short. Replace “by” in
method names with “for” cause it reads nicer.
Add Deprecator module and deprecate several existing enum class methods

Deprecator module simply prints a warning when the old method is called
and then calls the new method, passing arguments if it’s expecting them.
Add unreleased section to top of CHANGES.md with info on Enum changes
Add change info on enum alias support
Merge pull request #134 from localshred/bj/enum-values

Add enum alias support, refactor Enum class API