Purchase/Recruit exclusions in Options.cfg file

Reads yaml list of items to exclude from Purchase/Recruit screen.
purchaseexclusions patch for language.h LocalizedText.h change

Fixed compilation error after language.h change
partial refactor of basescape
battleRangeBasedAccuracy - test
0.7 - acc / 2.0
baseDeviation = 0.5 - accuracy / 3.0;
Fixed: Items removed from store when researched.
Fixed: map<>::find() return values were not checked.
double baseDeviation = 0.4 - accuracy / 3.5;
day/night check
day/night fixed.
tabs added.
day/night check fixed.
Smooth dependence on light
added into account shade of tile
changed type of shade
fix: check unit
added spread for Autoshot
giant if statement to stop doors closing on large units.
Merge pull request #359 from fenyo1/fixItemsRemoveOnResearch

Fixed: Items removed from store when researched.

tested and confirmed with original xcom behaviour. this IS the right way.
fix: autoshot