Allow user to add router, conversation and channel components

Could we not use something like ``lodash``'s ``where()`` function for this?