Split updatedb functionality.

Originally updatedb served as a command for two different purposes:
- Performing database schema upgrades.
- Performing actions specific to Pootle/TT version upgrades

Since Pootle is transitioning to South, we need to ensure that:
- Old users will still be able to upgrade
- Version-specific upgrade actions will be able to be performed once
  database schema migrations are handled entirely via South

The updatedb management command has been slimmed down to perform only
schema upgrades and only up to version 2.5. That way we ensure old users
can upgrade, and we move the version-specific actions to a new command,
upgrade. The new upgrade command will keep track of which build version of
the code is running the site in order to perform the necessary post schema
upgrade actions.

Schema upgrades starting from 2.5+ will be entirely handled via South's
migrate command.

Part of bug 2773.
Moved buildversion retrieving code into its own function.
Refactored upgrade code.

Less code, removed potential duplication.
No need to call save_xxx_version on each upgrade function.

The build version will be automatically extracted from the function name,
which needs to follow the `upgrade_to_xxx` pattern.
DEFAULT_POOTLE_BUILDVERSION is the maximum allowed in updatedb.

The value for this is the buildversion of Pootle 2.5 so it will prevent
newer installations from running updatedb accidentally.
Setup schema migrations à-la South.

Now Pootle is using the autodetector instead of the internal API and
phases out the old one-for-all breaks-your-installation-from-the-web
updatedb command.

These are the last bits to fix bug 2773.
Incremented product and build numbers.