Additional validation for container volumes and ports.


* Resolves #260 - Support ro mode for volumes
* Resolves #301 - Support `~` for home directors
* Fixes a bug with `get_tty_width()` (needs to be an int, not a string, it's an error in python3, and does the wrong thing in python2)
* add to docs about using ro/rw with volumes

I've seen multiple people confused about this so I tried to clarify that this is only an issue on OSX, not linux.