Set up Checkout button JS with data attributes

Instead of calling a JS function we listen for a click event on a
selector that matches the checkout button. This way it doesn't matter
when the JS is loaded, as long as it's after jquery.

Fixes #21