Created working structure and implemented a few interfaces.