Fixes for fatal errors and python3

Current master branch is unusable due to several issues. Hopefully this addresses them.

Note. (b'\x00')[0] is an integer, not another byte literal hence the update to the _recv_confirm logic. I've never been able to replicate the second case. Presumably it's something in the scp protocol?

```python
elif msg and msg[0] == 1:
```