Testtag: More cleanly handle no id param & make asynch

/testtag now 404s when not given an id parameter and is considered asynchronous, so it must call self.finish() itself and it should not be implicitly called by tornado (default behavior of without tornado.web.asynchronous decorator). This should be the correct behavior for a servlet called by json on the page.