Improve OptionParser switch validation

Closes #1537.

This adds a third element to the tuple returned from OptionParser.parse/2 when the value for an option doesn't match its switch type.