- rewrite in python?
- support non-ssh access?
