Central -> Peripheral in TransferManager

- Last commit message falsly stated that Peripheral->Central was missing, when it was the other way around *cough*
- In any case, the TransferManager can now send and receive data in both directions
- BluetoothManager now fully uses TransferManager
- Sending IPs now writes WithoutResponse except for the last write - so we send all IPs in a “single” (chunked) message and receive a single response after the last write that tells us if any of the IPs worked
- CWBluetoothConnection no longer has a global state. Instead we use a state for every characteristic and a “didError” BOOL that indicates if this connection encountered a fatal error