added a html generator, refactored responders