Add support for iframes

This PR builds off of https://github.com/guardian/scribe/pull/221

First change is to have all document calls use `scribe.targetDocument`. Current API usage: `scribeElement` passed in is a div inside of an iframe and the options object has `iframe` set to true, e.g. 

```javascript
// scribeElement is an element inside an iframe
// Create an instance of Scribe
var scribe = new Scribe(scribeElement, { iframe: true });
```

I'm looking for opinions on how I should test the changes. I considered running the testsuite twice (once with the div inside an iframe, once not), but that may be going overboard.

@OliverJAsh @hmgibson23 
I think this is the cause of the problems in Firefox