fix the undefined symbol

You cannot have static members without defining them:
http://stackoverflow.com/questions/4891067/weird-undefined-symbols-of-static-constants-inside-a-struct-class
That actually creates an Undefined symbol error on Groovy, Ubuntu Quantal.

Instead of defining them in a different .cpp file, I replaced the values with an enum which makes the code cleaner. The bit shifting happens on ints now but that is still valid as it is cast to an unsigned char.

I just had to add the cont to buildBytes as we now pass something that is more of an object.