Fix TimeoutExpired class

This pull requests fixes two issues:

1. Fix `__str__` method

This method was throwing an exception (`AttributeError: 'TimeoutExpired' object has no attribute 'timeout'
`) because it was referencing variable `timeout` which was never assigned in the constructor.

2. Fix argument order in the `TimeoutExpired` class constructor method

The line of code which was throwing this exception was passing arguments to the constructor in the same correct order which is used in Python 3.3 and above (`cmd, timeout, output`), but the constructor declared them in an invalid / different order (`timeout, cmd, output`).

See https://github.com/python/cpython/blob/master/Lib/subprocess.py#L388 for reference.