cheeryPy tutorial from http://docs.cherrypy.org/en/latest/tutorial/index.html