New methods for getting stats

This incorporates commits (with necessary changes for our code base):
https://github.com/evernote/pootle/commit/f7bfd01d66b6c7e846be756a39318369d0884415
https://github.com/evernote/pootle/commit/7c89432a5a79db98176e7faf5e487a2164d650ff
https://github.com/evernote/pootle/commit/2d175ba08d4e82b0277708791cdff9ca21620d27
https://github.com/evernote/pootle/commit/76130849e2111c4c415e1d33cd274f53256124a8
https://github.com/evernote/pootle/commit/2de66822ed4a949b9bb3d9d9dab6c7988d2f40ea
https://github.com/evernote/pootle/commit/3591186540d2f049f5653910e78b0987dee9b9ef
https://github.com/evernote/pootle/commit/9e9031d8aec1309698491725e2d9dc7328eb8975
lastaction member stub
Implement get_name method override for the Directory object
Hide placeholders and table headings until the table is loaded

To indicate the table is loaded, remove 'js-not-loaded' class name from the stats table
Added JS for stats loading
Add progressbar js-based rendering
Add last-activity snippet
Use mtime as timestamp instead of isoformat to get a last action
Set default empty value for get_last_action method, add get_parent function
Delete getquickstats
FOLLOWUP: Adapt our code
FOLLOWUP: More code adaptation

As a side effect we no longer try to generate stats immediately after
updating against templates or from VCS, as I think this should speed
those operations considerably and we generate the stats on the fly later
when needed.
Use new stats in get_translation_stats function
Adapt more code to new stats
Calculate and fill in the completeness ratio used for sorting
Update spin.js to the newest version (1.3.2) + adjust its defaults
Show spinner until stats are loaded
Show spinner early when requesting extended stats; show it on <body> tag
Until stats are loaded, show semitransparent graphs
Cleanup: PEP8 and coding style fixes