New broadcast

This adds a new method `request.filter` which may become the basis for a new `request.request`. It accepts a filter function to apply in parallel to responses from connected servers.

Also defaulted `remote.requestLedger` to use a [filter function](https://github.com/ripple/ripple-lib/blob/new-broadcast/src/js/ripple/remote.js#L351-L363) for checking that the ledger is validated. Disable by passing `allow_invalidated` in `requestLedger` options.

@ahbritto @shekenahglory