session: Add JoinRequest
session: Add JoinRequest

JoinRequest provides a constructor for creating transport layer Request
object. Constructor is a curried function with non-Session
parameters being bound first. This comes handy later on for removing
duplicate code.

Since the join operation is meant for joining the channel, the channel
id is the actual request payload and is thus contained in the content
instead of header.

Operations such as sending a request to channel should store the channel
id in the header, since in that case it should be considered as a part
of the request metadata.

Signed-off-by: Harri Salokorpi <eefb23b8deb8c30dca252cd0ae751b67337dc69f@reaktor.fi>
Signed-off-by: Karim Osman <94396faf6cc817be76165477038b3cfa832e89a4@reaktor.fi>

akisaarinen/ccf,akisaarinen/ccf