webrtcbin: Store mid to make create-offer idempotent
If the mid is not stored in the transceiver, but it is stored in last_offer, then a furthe create-offer call will just ignore that transceiver.
Also include unit test for ensure it doesn't regress.
I've also added another patch to just fail to create an offer if you have a locked mline that doesn't have caps, otherwise that also causes an abort.