ayrton 0.7
Another long-ish cycle (1.5 months, more or less). That's what two weeks of vacation do to the project.
This time I fixed executing things in, and handling the standard streams between the
ayrton script and, the remote(), so now we can run complex programs like vi and
mc. The ChangeLog:
- Send data to/from the remote via another 
sshchannel, which is more stable than usingstdin. - Stabilized a lot all tests, specially those using a mocked stdout for getting test validation.
 - A lot of tests have been moved to their own scripts in 
ayrton/tests/scripts, which also work as (very minimal) examples of what's working. - Use 
flake8to check the code. - Move 
remote()to its own source. - API change: if a 
strorbytesobject is passed in_in, then it's the name of a file where to readstdin. If it's anint, then it's considered a file descriptor. This makes the API consistent to_outand_errhandling. - More error handling.
 - Fixed errors with global variables handling.
 - 
argvis handled at the last time possible, allowing it being passed from test invocation. - 
shiftcomplains on negative values. - Lazy 
pprint(), so debug statements do not do useless work. - 
stdin/out/errhandling inremote()is done by a single thread. - Modify a lot the local terminal when in 
remote()so, among other things, we have no local echo. - Properly pass the terminal type and size to the remote. These last three features
    allow programs like 
vibe run in the remote. - Paved the road to make 
remote()s more likeCommand()s.