Better abstraction by introducing new System class