Split the core project into smaller ones

Assignee Loading
Time tracking Loading