Fix osx keyboard control that seems to have been broken by a new version of pyobjc.
Merge pull request #75 from balshetzer/master

Fix OS X keyboard control
Add a script to run all tests. Any file starting with test_ will be run.
Merge pull request #76 from balshetzer/master

Add a script to run tests
Simplify plover by removing the concept of a dictionary format. Plover will use one format to represent steno strokes internally.
Merge pull request #77 from balshetzer/master

Remove the abstraction of dictionary format
The launch script will display errors in a gui instead of just printing to the console.
Merge pull request #78 from balshetzer/master

Improve the launch script
Mostly refactoring for the live dictionary update feature:
- Refactored translator to not retranslate already translated strokes on each stroke unless the translation changes. This is necessary for being able to modify the dictionary on the fly.
- Refactored formatter to be stateless. This makes live changes less complicated.
- Fixed new orthography package's handling of doubled final consonants for words with letter q as in equip -> equipped
- Added unit tests
Some follow up changes:
- Fix translation logging
- Make the logs be in order: stroke first then translation
- Add tests for changing the translator's state
Merge pull request #79 from balshetzer/master

Refactored translator and formatting to allow live changes.
Update setup.py to reflect recent changes.
Merge pull request #80 from balshetzer/master

Update setup.py to reflect recent changes.
Fix new issues with packaging plover on osx. These issues come from new versions of libraries we depend on.
Minor changes, mostly whitespace
Add support for the treal
Make the treal machine work with windows. For some reason hidapi wasn't
working so I used pywinusb
Fixes to treal and changes to make packaging work
Merge pull request #83 from balshetzer/master

Add support for the treal writer
Minimize typing output in the case where suffix is encoded as a new entry in the dictionary.
For example:
S: "drive"
S/S: "driving"

Before this change plover would backspace 6 (drive plus the space before it) then type " driving". WIth this change it will only backspace one char and then type "ing".

Plover used to do this but a recent refactoring caused this regression. Now it does it properly again.