Assume that .getHtmlFragment() can be async operation

It's first step to handle nested iframes.
Support multiple nested iframes

TODO: cleanup code, refactor, support edge-cases (e.g. iframes
with srcdoc or src="data:")
Use jQuery.Deffered to handle async operations
Further simplification of code related to nested iframes support
Handle situation in which one of the nested iframes doesn't support Shutterbug

Implement request timeout.
Start timer immediately, rm .getPng() method, simply .getDomSnapshot()

I believe .getPng was used only internally as it expected very
specific data format.
Add demo of nested iframes (with and without Shutterbug support)
Merge pull request #13 from concord-consortium/nested-iframes-support

Nested iframes support