1.8 Protocol Update

Adds the new 1.8 protocol.
This is one ugly piece of code. First, it's missing parenthesis, second, it's missing explanation. Why are you shifting left and right again?