Add 'source' property to Suggestion

Could be used to indicate the origin of the suggestion. So far only the
local translation memory is supported.
Fix compilation of MO files for extensionless POs

When saving a file without extension, the MO wouldn't be compiled into
the right location. Fix the code to use a proper method of replacing the
extension.
Fix gettext build on OS X (again)

Don't rebuild .gmo files from .po if the timestamp is wrong; in theory,
it should be done, in practice, the script has trouble finding msgfmt
and fails to build properly without it (talk about catch-22...).
Fix font picker exceptions on OS X Yosemite
Fix SuggestionsSidebarBlock for multiple providers

Incorrectly, the query ID was incremented for each provider and all
suggestions with a different ID discard as outdated; in effect, only one
(fastest) provider was used. The ID need to be shared by all queries
for the same catalog item.
Use Language objects in suggestions and TM APIs.

Instead of passing a string in, use the Language class. This provides
greater flexibility in getting the appropriate representation of the
language (e.g.  shortcode, RFC 3066 etc.).
Try interpreting std::exception::what() as UTF-8

When displaying exceptions to the user, try to interpret const char*
messages as UTF-8 first. That's because they'll be coming from a third
party library or external (e.g. network) source (Poedit itself uses
Unicode strings) and UTF-8 is the de-facto standard and the most likely
charset.
Don't allow All Files (*.*) in file save dialogs
Add Language::RFC3066()
Handle variants of the same language code in TM

The translation memory stores full language code (e.g. cs_CZ) and search
required identical match. This caused problem particularly for languages
that are same in different locales (e.g. cs and cs_CZ are
interchangeable).

Make the search more inteligent by searching both variants: search using
the short version too and use prefix search in the other direction.
Penalize the secondary search term slightly to give the right results
when the difference *does* matter (e.g. pt vs. pt_BR or zh_CN vs. zh_TW).
Fix broken siderbar layout with TM disabled

Make sure the bottom part of the sizer stays at the bottom even if
there's nothing in the upper part.
Put sidebar header into a sizer of its own

This makes it possible to further customize the title, e.g. by adding
icons or buttons to it.
Merge branch 'stable'
Fix Language::RFC3066() to actually work

Fix an embarassing bug in f082fec1 where the function wouldn't return a
valid value for country-less language codes.
Don't pad explanation labels on the right side

Don't add borders to ExplanationLabel uses under checkboxes on both
sides, only on the left (under the checkbox). Otherwise there would be
needlessly wasted space to the right.
Fix (rare) too many linebreaks in AutoWrappingText

The algorithm assumed that the full width of the control is used for
text layout; that's apparently not the case. Add 4px of buffer to avoid
the bug where the algorithm would sometimes break the text in such a way
that only a single word would be on a line (in the middle of the text).
Force AttentionBar refresh after showing

It is needed on Windows if the control resized, otherwise artifacts from
the underlying list control header could show up on the yellow
background.