Avoided possible retain cycle
Relax strict type equivalence for NSNumber kinds
Added demo and benchmarks