tests: Monkey patch the environment

We don't want to connect tot he actual bus to run our unit tests.

This allows us to completely instrument our engine class and test its
behaviour.

The test-specific attributes in our monkey-patched classes should all
start with "_mock_", for example:
    MockEngine._mock_auxiliary_text

This should help make sure we don't create conflicts with the actual
attributes of the objects we are monkey-patching.
tests: Start testing the Cangjie engine

This tests for some of the expecte behaviours of the Cangjie engine,
based on automated user input.
Import the bundled pycanberra relatively

This helps running unit tests against the local dev tree
rather than the installed version.
tests: Run against the development tree

This will help catching regressions earlier.
tests: Rename the test file

For now, I'll write a test file per engine, we'll see later on if
another grouping makes more sense.
tests: Introduce MockCanberra

This will be useful to test that we are "emitting sounds" on certain
conditions.
tests: Add a bunch of unit tests for Cangjie
tests: Check the behaviour of escape and backspace