Added weighting to MapAnalysis and refactoring

Changed MapAnalysis to use a map of layer type to layer data instead of
a list to eliminate the need of a specific ordering of layers
Added parameter to MapAnalysis to also take a mapping of map types to a
double for layer weightings
Minor refactoring and adding documentation
Merge branch 'master' of https://github.com/jjarczykISU/TerrainTrain