Improve caching of specialized DAOs in evaluator

- Introduce common wrapping/cache logic for prefetching DAOs
- Use soft memoization for wrapper DAOs
- Retain event DAO reference in external eval job