New: TScore class for evaluation functions. TScore holds two scores: one for the middle game and one for the end game. The final (single) score is calculated for the actual game phase. 

Version is tested and stable. 
Some functions still need to be changed to use TScore: evaluateMaterial,  evaluatePawns and the evaluation score SearchData

Using TScore 
1) Enforces all evaluation components to use tapered evaluation, for a smooth transition between the game phases.
2) Cleans up the code - scoring specific logic is now separated.