Add payment form and js handling logic

Note this commit does not register the form
with a twisted web server resource, so it
will not produce an interactive page if you
run the site.