Forbid "preset" as an option in services

This key will now become reserved for use with TTS tags.
Basic control layout for presets

Adds a new horizontal layout to the bottom-left corner of the service
dialogs that will be used to control the preset stuff.
Preset saving support

Adds support for the user to save a service configuration into the
presets slot.
Preset loading and deletion

Adds support to load a preset back from the user configuration and also
then delete it.
Playback via context menu

Adds "AwesomeTTS" to many of Anki's context menus, allowing playback via
the user's presets.
Reselect last-used preset, if possible

If a user inserts a preset using the templater, let's make that easy by
recalling it if there is an exact match.
Basic TTS support on context menus

This currently works from the reviewer only and does not intelligently
detect whether there are actually TTS tags present or not.
On-demand TTS support for templater dialog

This should be helpful for users with complex templates, also fixing the
way windows are found (should be more reliable).
Offer "Play TTS" context menus conditionally

Do a very basic check against the source template to see if there might
be playable TTS on that particular side.
Fix for parent window on review dialogs

When the reviewer class emits an alert, it was previously always
parented by the main window, but with arbitrary web views now supporting
the playback, this needed fixing.
TTS tag support for 'preset' attribute

Updates the template helper dialog to insert TTS tags with a 'preset'
attribute if the user has an active preset. Updates the reviewer to
understand this attribute and use it to look up the correct attributes
for a tag.
Separated listviews module (from configurator)

Breaks the substitution list class stuff out of the configurator module,
which was getting very long. In the future, the listviews module might
expose other classes (like a group of presets), so this makes sense
long-term too.
Manage presets from the Configurator window

This allows the user to get at the presets if they do not want to go
through one of the other service dialogs, and also provides some
additional explanatory information.
Screenshot update from added features

Swaps out all screenshots that were affected by the new set of features,
including new controls or context menus.
Documentation additions for using presets

Adds a basic usage guide and screenshots for doing playback via the
presets mechanism, also adjusting other links.
Grunt package update for grunt-replace

Updates this plug-in from the v0.7 to v0.8 version, fixing a regex
escaping problem.
Merge branch 'add/presets-26-27-28' into develop

Brings in support for setting up service presets, playing those presets
using template tags, and playing selected text with the context menu.

Closes #26.
Closes #27.
Closes #28.