re-structure source directory, prepare for ui-engine