Update channel passing to use reference ids instead of stream ids

Signed-off-by: Derek McGowan <derek@mcgstyle.net> (github: dmcgowan)
Merge pull request #54 from dmcgowan/channel_reference_id

Update channel passing to use reference ids instead of stream ids
Add copy functions for read or write only streams

Signed-off-by: Derek McGowan <derek@mcgstyle.net> (github: dmcgowan)
Copy function update for better struct and map support

Signed-off-by: Derek McGowan <derek@mcgstyle.net> (github: dmcgowan)
Merge pull request #67 from dmcgowan/copy_updates

Fix copying