Bump version number

With the coming release of beta 11, changes to this branch will be going
toward the beta 12 release.
Service description and instruction improvements

Clean up service names and remove references to "building" from the
README (which is no longer required), sort service lists in the
configuration dialog, and improve service descriptions.
Minor linting of shell scripts

These are to be made more portable soon, so linting helps in advance of
that.
Merge branch 'pre/v1.0-beta11' into develop

Brings in the fixes that were made to the preview branch before the
release of v1.0 beta 11.

Conflicts:
	awesometts/__init__.py
	awesometts/service/google.py
Include GitHub as an installation method

Adds downloading and unpacking an archive by hand as an installation
method to the main README.
Initial pass at Yandex.Translate support

This works in a similar fashion to Google Translate, except with fewer
language options and no variants. It has a similar limitation in the
length of phrases that can be supported, so perhaps those things can be
fixed together.
Quality support for Yandex.Translate

This makes the quality parameter configurable by the user. Only 'hi' and
'lo' are available.
Update README to include Yandex.Translate

when going to stable, the Anki add-on page will also need updating. This
service will be the second service available in the add-on that will
always be turned on, no matter what platform you are using.
More conservative throttling defaults

With a new online service, the add-on should ship with very conservative
throttling defaults. As such, this changes the threshold/sleep ratio to
be 1:3, also having it kick in more often.

Users can tweak this setting, if they wish.
Merge branch 'add/yandex-23' into develop

Brings in support for Yandex.Translate as an online service. As a
side-effect, this does increase the conservativeness of the online
service throttling, although a user may adjust it to be more aggressive
if they like.

Closes #23.

This service is affected by the same limitation as Google Translate as
discussed by issue #21, but they will get fixed together.
Remove normalization functionality from router

Because the router does not have full context of where text is coming
from (e.g. note field, on-the-fly text, user input), it really doesn't
have all the wherewithal to figure out the best way to normalize it.

This becomes more problematic when we start dealing with how to treat
cloze and parenthetical text in a sane manner. With this branch, it will
become the responsibility of the caller to the router to figure out how
to do normalizations of the text.
Replace STRIP_ALL with more nuanced stripping

This adds new stripping options in the 'addon' bundle to include
strip.from_note (for BrowserGenerator runs, future prepopulation of
modals from note fields), strip.from_template (for on-the-fly),
strip.from_user (for direct user input in previews or EditorGenerator
insertion), and strip.sounds (to continue to allow stripping of sounds
where necessary, e.g. the BrowserGenerator's removal of old sounds or
the Reviewer's handling of faking the {{FrontSide}} placeholder that
Anki uses).
Add normalizations before router calls

Updates all GUI components to correctly normalize input text before
calling the router, given their context.
Simplify router __call__ initial debug statement

Since text is no longer actually normalized within the router, this no
longer really needs to regurgitate the input text twice.
Reposition Add TTS button on cloze card layout

On the cloze version of the card layout form, there are only 6 widgets
occupying the button area, causing the hook code to fallback to the
left-most position on the button area.

This allows position 3 (the slot after "Add Field") to be used on both
form types.
Reviewer regression with "empty" text

The reviewer (i.e. on-the-fly mode) is supposed to silently ignore empty
tags, but the stripping was placed in the wrong place causes a
regression in that guarantee.

This fixes that by moving the text stripping to be immediately above the
'if not text' check that does the 'continue' to ignore the tag.
Merge branch 'chg/text-normalization' into develop

Brings in changes for where in the code text normalization happens and
how specifically that can be tailored given the context.

In sum, this allows text input from a note field to be treated
differently from text input from the user or text input from on-the-fly
mode, laying some foundation for issue #15 and issue #22.
Configuration strip_xxx flags

Introduces strip_{note,template}_{braces,brackets,parens} and
strip_note_cloze to the configuration list. These new fields will be
usable within the add-on for controlling whether or not text gets
stripped out from various places.

These will be helpful for users who use cloze or stick things into their
input fields like "{familiar}", "[formal]", or "(Spain)".
Shorten tabs on Configuration screen

Provides additional space to accommodate the upcoming "Text" tab that
will handle taking the user's preferences for stripping and cloze
handling.
Defaults for automatic playback

For new installs, the option to enable automatic playback for TTS tags
should really be enabled by default. Otherwise, the user has to go
search for what should really be the most intuitive behavior.