Inheritable and extendable objects constructor