Introduce BaseModal class