Add vector-based caching interpolators

* Store values in vector instead of c-array

* Use in non-time-critical places (e.g. energy postprocessing
  calculations).
Minor clean up in new_interpolators.h