Made parsing of ByteSizeValue case independent

This allows to parse '12GB' as well as '12gb'

Closes #4442
Term Vector settings should be treated like flags without propergation

today if a specific feature is disabled for term vectors with something
like 'store_term_vector_positions = false' term vectors might be disabeled
alltogether even if 'store_term_vectors=true' in the mapping. This depends on the
order of the values in the mapping since the more specific one might override
the less specific on.

Closes #4582
Simulate the entire toXContent instead of special caseing

Today we try to detect if we need to generate the mapping or not in
the all mapper. This is error prone since it misses conditions if not
explicitly added. We should rather similate the generation instead.

This commit also adds a random test to check if the settings
of the all field mapper are correctly applied.

Closes #4579
Closes #4581
s/similariry/similarity in AllFieldMapper