externalized persistence behaviour to own class