Implemented a cached ExpressionBlockIndex

Since ExpressionBlockIndexes are all final, there is no need to keep
them all around.  Performing AStar on 50 Difficulty 2 equations would
require the allocation of roughly 300k -350k ExpressionBlockIndex
objects.  Setting the cache variable to 5 (25 total cached) had a cache
recall rate of 99.88%.  With the cache variable = 7 (49 total cached),
recall rate was ~100%.  The speed up for solving the 50 equations was
roughly a factor of 2 for Difficulty 2 problems, and nearly negligible
on Difficulty 1/0 problems.
Minor update to heuristic

Counted simplification of multiplication/division
Located potential bug in EquationManipulator

This was/is causing extra hats to be put on number blocks that get
inverted.
Merge branch 'story' of https://github.com/thomaswp/tuxblocks into story
Made an easier to debug seeAllHeuristics

The best will be at the bottom, more likely to be seen
Merge branch 'story' of https://github.com/thomaswp/tuxblocks into story
Fixed update in Modifier Group
Rudimentary equations for teaching
Merge branch 'story' of https://github.com/thomaswp/tuxblocks into story

Conflicts:
	core/src/main/java/tuxkids/tuxblocks/core/tutor/IdealEquationSolver.java