Avoid packaging the gem with a spurious object file
Major rework of the gemspec

This change:

 - removes the platform specific binding (Ruby will run extconf.rb on platforms)
 - adds myself to the authors
 - Pulls version from the gem itself
 - includes all the files in lib that are added to the git tree
Restructure the Hermann gem extension build process to use rake-compiler

This is a little bit better and cleaner IMO than the hand-crafted rake tasks.

Would you like to know more? <https://github.com/luislavena/rake-compiler>
Depend on build instead of just compile in the default task
C code should be formatted with tabs not spaces
Raise a runtime error when a bad broker is specified

Fixes #6
Raise a RuntimeError when a bad partition is given to a consumer

Fixes #7
Make a plethora of whitespace and style consistency fixes to C code
Raise an exception instead of exiting process on bad brokers for Herman::Consumer
Raise an exception instead of attempting to write to an empty topic name
Fix almost all of the compiler warnings

Some are intentionally left out of the fixing because I believe there's a
failing test case that needs to be added
Properly raise an exception when the consumer is given an empty topic