Merge branch 'pull-71'

* pull-71:
  HACK: limit recursive expansion to 7 levels
Merge pull request #73 from netresearch/mime-type-json-schema.org

Ignore mime type on json-schema.org
Add AbstractRetriever and remove duplicate implementations through inheritence
Add coverage directory and IDE files to gitignore
Remove tabs/whitespace. Add unit test coverage. Add code comments.
Merge branch 'pull-66'

* pull-66:
  Remove tabs/whitespace. Add unit test coverage. Add code comments.
  Add coverage directory and IDE files to gitignore
  Add AbstractRetriever and remove duplicate implementations through inheritence
Remove tabs/whitespace. Add unit test coverage. Add code comments.
Fix Issue #65. Use JsonSchema\Exception\ResourceNotFoundException
Merge branch 'pull-67'

* pull-67:
  Fix Issue #65. Use JsonSchema\Exception\ResourceNotFoundException
  Remove tabs/whitespace. Add unit test coverage. Add code comments.
Merge pull request #72 from netresearch/invalid-schema-path-info

show path info in invalid-schema exception
Merge pull request #74 from netresearch/cache-schemas

Cache schemas
Part of #62: automatically detect schema from $schema property in JSON data, switch order of CLI arguments
Part of #62: support relative schema paths
Part of #62: support http/https schemas
Fix #62: detect JSON schema from HTTP headers of data file
Disallow persistent HTTP connections