Wrap all page elements with div.container for responsive fixed width

Add another responsive level when user viewport size is over 1024px, a
fixed width layout is used instead of fluid (via lounge/13). This result
in better readability for full-screen viewing in widescreen since text
block are now centerized instead of left-aligned.
Layout update for all topics listing page.

Table doesn't work really well with responsive, now we just switched
over to use the same style as topic header in overview page.
Update all code to use 4 spaces instead of 2 spaces.

Consistent styling throughout the whole project.
Componentize JavaScript files.
Add timestamp to all assets path for immediate cache expiration.

When HTTP Expires header is used for optimizing page loading, the file
will be cached by the browser or proxy server and may cause assets to
become out of sync when the app is updated. A query string containing
timestamp of asset file is used here to force expiration of cache when
the asset file is updated.

This is, however, is non-optimal since Squid and older browsers refuse
caching anything with ? in its resource URL regardless of HTTP Expires
cookie set.
Merge branch 'feature/fixed-layout' into develop