Implemented new feature "partial schemas"

 - New directive "schema;" that is used to define a partial schema. Only works at top level of schema.
 - New directive "include: <schema-id>" that can be used anywhere "type" directive can be used. It imports a partial defined schema where used.
 - Updated Readme with new directives
 - Added new tests for "schema;" and "include:" directives (Some not working right now)
 - Cli and Core() now can handle multiple schema files and merge them all before starting the parsing
 - Currently include cannot be used inside "schema;". This will be fixed at a later time.
Added instructions how to run test suite
Fixed a bug with recursive includes inside defined schemas.
Added new test file 35 that will test a working partial schema with a include to another partial schema.
Uncommented test 34 to test broken partial schemas.
Added a third partial schema to test file 35b. Moved them around some.
Fixed partial schema implementation.
Some tests on python 3.4 was broken but not on other python version.
Moved include logic from Rule into Core for better handling.
Merge branch 'partial_schemas' into develop