minimalistic entity-component system written in go