ObjC runtime playground: implementing memoized lazy evaluating properties with blocks