Implement component dependencies and some ground work for entities definitions