added optional onFromatError

Given:

```
var s = MyDummyStream // not a plexed stream
var p = multiplex(function onStream(stream, id) {})
s.pipe(p)
```

The following would throw an error and break multiplex (obviously because s is not plexed):
```
s.write('some troll is trying to do some flooding')
```
As a developer one deserves multiplex to crash in this case but when used along WebsocketStream anyone sending any dummy data would cause multiplex to throw an error.

This pull adds an optional onFormatErr callback which is triggered whenever the above happens. 

Constructor same as before:
```
multiplex = require('multiplex')([opts],[onStream],[onFormatErr])
```