LazyCollection implemented in CachedAttr.py
MDP.variables now uses LazyCollection