Introduction

The library has the following main usages:
- Executing commands on remote, either with blocking or non-blocking behaviour.
- Writing and reading in an interactive session.
- Transferring files and directories over SFTP.
- Ensuring that files or directories exist on remote.