http_app: add Event (de)serialization helpers
http_app: include case for all status code ranges

For application writers, the relevant success codes are:

  200 OK

    The event has been processed and the body contains a NetKAT policy
    that should become the current policy of the application. Currently
    any Content-Type will be parsed as a NetKAT policy, but this may
    change in the future.

  202 Accepted
  204 No Content

    The event has been processed but server has no updated policy to
    provide the client at this time.

All other success codes will be interpreted as a 202 or 204 in that the
client should assume that the body of the response does not contain an
updated policy.
http_app: complete event serialization
http_add: add initialization stage

A user must specify a host, port, and path to create an http_app. The
path argument, together with the host and port, specifies the URI that
the application will send a POST request to in order to initialize a
application instance on the server. The application expects that the
Location header of the response will be populated with the path of the
application instance. This path will be used to send subsequent PUT
requests containing network events.
http_app: initial commit of python library

The library currently supports constructing an abstract syntax tree and
turning it into its string representation.
http_app: flask app constructor given an event handler