Defining constants using constant paths.

Signed-off-by: Yorick Peterse <yorickpeterse@gmail.com>
Added missing definitions.

Signed-off-by: Yorick Peterse <yorickpeterse@gmail.com>
Rewrote the definitions generator.

The definitions generator is now capable of recursively processing constants
and their methods. It also groups these together into a single file based on
the root segment of the constant path. For example, the definitions for
`Encoding::BINARY` would be stored in `encoding.rb` along with all the other
encoding related data.

Signed-off-by: Yorick Peterse <yorickpeterse@gmail.com>