add empty fields array in indexerTests
refacture long Indexer::_build_document method to smaller parts
refacture indexer::_map to use generic mapping method for all field types