all components are now allocated with the componentForChannel: selector
conforms to RUComponentProtocol, changed atomicity of properties