Convert a SolrInputDocument to a lucene Document.
This function should go elsewhere. This builds the Document without an
extra Map<> checking for multiple values. For more discussion, see:
TODO: /!\ NOTE /!\ This semantics of this function are still in flux.
Something somewhere needs to be able to fill up a SolrDocument from
a lucene document - this is one place that may happen. It may also be
moved to an independent function
doc - SolrInputDocument from which the document has to be built
schema - Schema instance
forInPlaceUpdate - Whether the output document would be used for an in-place update or not. When this is true,
default fields values and copy fields targets are not populated.