Component system implementation
init