Refactors door and implements sharing model