#4 - static cached instances map

Implementation for #4 
I want to avoid calling `__clone` in any case