Added: The basis for a 3D crossword puzzle game.
- Loads 3D crossword format based on .xwc format.
- Displays graphical crossword in a QGraphicsScene painter context.
- Contains skeleton classes for all other functionality except accessibility.
Added: Example 3D crossword .xwc3d format file.
Added: Table view of crossword words and clues and corresponding model.
- Event filter in case the graphics view ever stole focus.
- Improved the graphical view appearance.
Added: Keyboard shortcuts to open and save files, quit and open help pages.
- Guesses for words are validated and shown in the table view and grid view.
- Partially rewritten 3d crossword format loader.

- Code is const correct.
- Reference getters replaced with setter methods.
- Replaced some magic numbers with constants.
Added: Platform independent text to speech singleton interface with SAPI backend for Windows.
- Added an entry number/direction row into the puzzle entry table.
- Rewritten graphics scene code.
- Rewritten the puzzle importers.
- Added loaded puzzle metadata, help and the software license accessible via shortcuts.
- Can now score crosswords/remove incorrect answers.
- Print crosswords (disabled as a menu option in Qt Designer).
- Removed unnecessary includes and other minor refactoring.
Added: Complete SAPI voicing for the program.
- Added sorting filter proxy model.
- Table view keyboard search and tab cycling have been disabled.
- Word guesses can be checked and amended.
- More error checking in the crossword loaders.
- New quit and word entry dialogs.
- Header file for holding the keyboard shortcuts.

Bug: Word table model changes aren't showing in the view without me manually resetting the model.
- Probably because main model and proxy model indices will be different and the wrong ones are being used someplace.
Added: Application icon.
- Moved keyboard shortcut constants into a single header.
- Added a crossword entry table row for word lengths, and related classes for representing that.
- Accessible support for the saving and loading of games (saving crosswords with partial solutions currently disabled).
- Resolved bug with updating the table model, since intersecting words share letters, extensive reloading is done when the letters change, not only the row on which the action is performed.
- Refactored the functions for indexing into the crossword grids.
- Made the crossword grid zooming animation less sensitive.
- Added <spell> tags to some spoken text, so that words are spelled out (Note: treatment of these tags depends on the underlying speech engine).
- Enabled filtering of crossword entries by regular expressions (Useful regular expressions not added yet).
- Enabled horizontal scrolling in the table view to help navigation on lower resolution displays.
Added: A highlight onto the selected item in the graphical crossword grid view.

- New speech options, "dot" is read instead of the standard SAPI "period" for full-stops, when voicing punctuation, and consecutive dots are voiced as "X dots".
- Keyboard-search for clues (first letter only), when pressing CTRL+letter, in the crossword entry table view.
- Code for adding a background graphic to the graphical grid view.
- Partially refactored loaders for XWC and XWC3D formats
- .xwc3d now supports winding solutions, background images and puzzle catchphrases
- Refactored code for displaying grids - grids can now be moved around with the mouse
- Refactored puzzle loaders, and added support for "combination lock" puzzles (no graphical view yet though)
- Added keyboard shortcut to change speech mode (normal and spelling-out)
- Created puzzle subclasses to reflect differences between grid-based and "combination lock" puzzles
Enabled printing and emailing of solutions (though printing remains untested). Added background images for the 2013 puzzles. Added empty puzzle files for the 2013 year, with a complete January puzzle and a partial February puzzle. Changed "winding" clues to "snaking" clues for consistency with crossword setters. Added an "identifier" property to the puzzles to represent the idea of days of the month (as some puzzles may order their solutions alphabetically depending on the day etc). Added two new directions (towards and backwards).
Removed redundant code, fixed bug with reading current clue (it was reading the wrong row of the table).

Signed-off-by: Tw1ddle <sam@silver42.karoo.co.uk>
Added the latest updated crossword files (January and February).

NOTE: Not including any answers in the 3D puzzles, as we don't want them to be available initially.
Added methods to load backwards and towards clues for XWC3D files. Renamed "AntiClockwise" clue direction to "Anticlockwise". Changed column header "Word Lengths" to "Lengths".
Added the complete 2013 puzzles (without answers) except for December, not thoroughly tested yet (apart from the tutorial, which is).
Added backspace shortcut to erase guesses. Increased font sizes, widget sizes, and chose a monospaced font throughout the program.
Ensured program works with Qt 5.0 beta. Revised the wording of some phrases. Removed tr() macros, would be wiser overhaul the way text is managed if localisation is done.
Tweaked more speech and controls/shortcuts. Added skeleton class for encapsulating printer functionality.
Added a periodic reminder message that the program is open and how to get help, if there is no keyboard activity in the program for a period of time.