Second cache level POC
First round of refactory
Fix factory method name