fixed library components, made commands back into library components, added better hooks for command init