Frame out the blueprints-io module.

Allow for initial support of GraphML with a GraphReader implementation.
Get rid null in favor of Optional for the vertex key setting.
More refactoring around Optional in GraphMLReader.
Check for null Graph argument to Builder of GraphMLReader.
Fix build problems due to missing distribution.xml for blueprints-io.
Add GraphMLWriter to blueprints-io.
Merge remote-tracking branch 'origin/master' into io
Convert edgeLabelKey to Optional.
Convert XMLSchemaLocation setting to Optional in GraphMLWriter.
Refactored type inference to use Optional in GraphMLWriter.
Refactor the outputGraph method on GraphMLWriter to use smaller functions.
Refactor outputGraph in GraphMLWriter to use smaller functions.
Refactor outputGraph in GraphMLWriter to use smaller functions.
Removed a null initialization of an Optional.
Declare member variables as final in GraphMLWriter.
Remove the concrete sorting class for elements in favor of a Comparator function.
Minor refactoring to outputGraph on GraphMLWriter.
Merge remote-tracking branch 'origin/master' into io
Property class updates. Had to comment a test out in Gremlin-Server to handle the API update.
Ignore test instead of commenting out.