Add tavern impl + concent of Outside objects. Minor refactoring was also made