Support Optional field validation

Support throwing an exception when parsing a document that provides a key for an Option[T], but the value can't be converted to a T. It's useful in cases where if a value was provided it must be there, or the parse operation should not complete e.g. for web request bodies.  

a la https://github.com/json4s/json4s/issues/150

I think `withOptionParseExceptionsThrown ` is a bit of a clunky name though.