First draft of the final libchan protocol

Signed-off-by: Solomon Hykes <solomon@docker.com>
Merge pull request #32 from shykes/pr_out_first_draft_of_the_final_libchan_protocol