Writing an HTTP Server in Go from Scratch: Part 1