AV-13: Setting up various factories, returning promises from factories to set interface for later