list.js bugfixes and tweaks/minification

When new users registered the account page would list Name, Location,
Bio as "null" when there were missing values.

Also Timezone were displayed as "UTC +null:00" and no default value when
editing (first in list -12:00).

This fix makes the GUI display "N/A" instead of null-values for text,
also makes it an empty string in edit-mode.
The timezone dropdown is now defaulted to UTC +0:00 in both draw and
edit mode if no value exists.

This commit also makes some other tweaks such as utilizing jQuery
methods instead of string concatenation on some places.

A minified list.js is also committed, compressed with yuicompressor
2.4.7 to cut some extra bytes.
Async ajax calls for some visualisations

If the dashboard contains lots of widgets/visualisations they block
eachother (javascript thread blocks) by doing lots of sync calls (page
load with 4-5 widgets could be 2-3sec). This change makes the rawdata
and realtime widget to use async ajax instead with callback which
doesn't block the javascript thread in browser - this makes the
dashboard feel alot snappier and page load is about 0.5sec instead in
comparsion on my test. Also the widgets does not "hang" during zooming
and time range change since the data fetching is not syncronous anymore.
Fixed some html-markup

DOCTYPE should be defined before <html>, also there was missing body
start tag and rawdata.php did not have either doctype, html or body.
Merge pull request #70 from IntoMethod/listjs-fix

list.js bugfixes and tweaks/minification
Merge pull request #71 from IntoMethod/async-vis-api

Async ajax calls for some visualisations