Bug fixes + unit test improvements

Notable additions:

+ Specialized JSONEncoder, decorators.Option.Encoder to handle types not handled by the standard JSONEncoder
+ Wrapper for python regular expression object with a human-readable __str__ implementation: validators.RegularExpression.Pattern.
  It is unsatisfying, but seems to be required. Because you cannot inherit from _sre.SRE_Pattern, you must aggregate it and delegate each of its method calls.

Signed-off-by: David Noble <dnoble@splunk.com>