Processed feedback

Mainly whitespace, moved one method to a new method
and switched to ByteSource instead of InputSupplier
Rename SafariExtensions -> SafariOptions
Enriched SafariOptions [WIP]

This commit does not break any existing functionality (tested).
Changes:
- The JSON serialization protocol has been altered to meet the new
  requirements.
- dataDir / cleanSession / customDriverExtension accessors have been
  defined. They're not used yet (to-do for next commit).
Rename SafariDriverExtension -> SafariExtensions

NOTE: The file itself has not been renamed yet to not confuse git diff
mv {SafariDriverExtension,SafariExtensions}.java