Add support for perfect audience ecommerce params

Would potentially close #406 

But this needs careful review and attention, seeing as its my first, and most likely does not have sufficient tests. (edit: they failed ;p)
 
Would love to go over my thinking in person with one/more of you tomorrow. @ianstormtaylor @reinpk @calvinfo @lancejpollard 
My only worry here is that I think in their regular snippet these properties are added before their library is loaded, but in this case we're adding them in our `track` call, so their script might not know to "re-update" those properties. (My guess is that it won't know, but not totally sure.)

I'd be curious to know if they support an async way of recording those things. Or maybe we can reload their script after setting them? Not sure if that has consequences either.