Allow user to add router, conversation and channel components

Will clean this up further in #21