Added a new option "constrain" to the contain option

Howdy!

I've added a new option to contain called `constrain` (in addition to your already implemented `invert`) which will prevent the image from being panned outside of the container element. This is a fairly simple addition, and I've tested in iOS, android, Chrome, Firefox, with multiple window sizes (but not IE - however, it's just math and copying mostly something you've already done, if your other code works in IE then `constrain` should as well :) )

Thanks for your work on this!