HTTP Parse Structure Change

Replaced the monolithic but fast switch based HTTP request parsing FSM
with a set of Event based on the State Pattern. Resulting code is not as
fast but much more maintainable. This also allowed us to eliminate two
layers of classes, Transition and Character.