compile nested source files
implement sprite component
declare some global settings
organize main function