Basic flow implementation

Might be worth adding an end_flow() method that, among other things, calls remove_flow() on its source host object. This can be called after the while loops have completed in the run() methods. As a sidenote, I'll be modifying the remove_flow() method to accept a flow_id rather than a flow object.