Reorganize files, define Core API