Optimise HLcioObject

- Added static class member so the hashable parameters are no longer
  recalculated every time

- Added hashValid bool so we only recalculate the hash when needed