Open a payment popup window (bug 1110228)

@muffinresearch r?

It's mostly working but I still need to clean up an async problem in the test -- a failure that only happens when the whole suite runs. I think I need to understand the execution flow of mocha async tests better.

But, yeah, payment window opens on Chrome! the "paymentSuccess() function doesn't exist" error in the screencast will be fixed when your shim patch is done.

![desktop-payment mov](https://cloud.githubusercontent.com/assets/55398/5404688/28150f06-815f-11e4-97e1-aae565cd2ff6.gif)

It's just the example app but I fixed it up. I think "map" is actually a more accurate verb here.