refactor source tree

This patch rearranges the source tree along the lines recommended by Glenn Lewis at https://groups.google.com/d/msg/google-appengine-go/dNhqV6PBqVc/ihzI5vgdE1EJ and discussed at #320. All the go code stays where it is, but imports change to use full paths. All the non-golang assets move into a new `app` subdirectory: yaml, js, css, templates, etc. HTTP routes are registered explicitly instead of happening automatically in `init()`. I think this is a minimal set of changes, but there may be a better way.

With these changes, `goapp test` and `goapp test ./...` both work. The `app.yaml` file is now in the app subdirectory, so use `(cd app && goapp serve)` to start the app.