Added domain models
Added core interfaces
Added ui-related interfaces
fixed some compilation errors, added tests