DRILL-1313: All text mode for json reader
Current implementation handles nulls that appear while in text mode differently depending if they appear in lists or maps. This allows for a null where a list or map is expected to act the same way it does without text mode enabled. For an expected map it just assumes that the field didn't exist, in which case the leaves below become null filled, and for a list it will default to showing an empty list.
If we are actually inside of a list, a null in JSON will be treated the same as the string "null", which improves over the previous behavior of just dropping the null value all together, as we do not support null values within any of the repeated primitive vectors currently.
Patch has been rebased on top of merge branch.