Ensure that manhole.install() invoked only once

Previously manhole.install() could be invoked multiple times leading to
multiple fork patching and hiding errors in user code.

Now only the first call would install the manhole, and the next attempt
will raise manhole.AlreadyInstalled exception, revealing bad user code.

This change also simplify the code, removing unneeded if block in the
normal code path.
Merge pull request #30 from nirs/install-once

Ensure that manhole.install() invoked only once
Make this test try to send more times, and slower test packets to the connection. It seems that the connection thread sticks around longer than expected on travis.
Use the fd directly in `cry` (no locking issues). Add another horribly slow test for this :sweat_smile:
Revert "Use the fd directly in `cry` (no locking issues). Add another horribly slow test for this :sweat_smile:"

This reverts commit ba78520f7d8471c666d83d29425d1bad97cb034b.