Added 'domain' module. Restructured project