initial interfaces for matching rtc API

Add interfaces for ```core.rtcdatachannel``` and ```core.rtcpeerconnection```. Eventually we will likely also want a ```core.mediastream``` api to implement ```getLocalStreams``` and friends.
We don't use this method so I don't have strong feelings but what happens when RTCPeerConnection returns an object which doesn't match your return type? Why not just specify that it returns an object?