Use HashMap

Use HashMap's instead of Vectors to decrease
running time from O(N^2) to O(NlgN). Now runs
big test case in 5 seconds from 1 hour.
Add timing

Add timing to parsing input file.
Encasulate cache in EntityCache

Move all Entity storage in environment to EntityCache
object to encasulate all java util objects (vector, hashmap)
for easy changes.
Merge branch 'hashmap'