subtests.docker_cli.detach: New detach test

This patch adds basic detach test. There are 3 variants:
* basic - basic ctrl+p ctrl+q test
* stress - many iterations (currently only 3 as ctrl+p ctrl+q requires
           sleep)
* multi_session - uses 2 session attached to single container
                  simultaneously

Signed-off-by: Lukáš Doktor <ldoktor@redhat.com>
Well that depends on the `prompt` and `check` commands. This version is stripped so it supports only `sh`-like interfaces, but this concept was already used on `python`. With vim it would be pretty hard as it's `ncourses` or similar was so parsing that would be really hard.

So what you're talking about is you want to split `InteractiveAsyncCmd` into `InteractiveAsyncCmd` and `BashLikeInteracitveAsyncCmd` which is IMO beyond of the scope of this demonstration patch.

As I wrote earlier, version with 2 classes, on wrapping the another, seems better to me as it leads to less confusions caused by multiple purposes and thanks to @jzupka we have the solution in latest version of `dexpect`.