Add tests for the appcache package

Currently tests only verify the manifest presence and the header
validity. It should also verify the other sections validity

cf. #2716
Disable the cache manifest in the tinytest client application to
ensure determinitic tests
Improve appcache tests

+ Verify manifest content-type
+ Verify all lines validity with regular expressions
Fix clientHash call in appcache.

Appcache was broken because it output the *function* WebApp.clientHash instead of its return value.
Complete the appcache test suite
* Add a test to verify section header unicity
* Add a test to verify NETWORK section content
* Simplify the regular expressions used in the manifest content test.
Run appcache size check after user code has had a chance to run.

This way the size check takes calls to Meteor.AppCache.config()
into account, so users can remove files from the cache and get
rid of the warning.

Also, add an internal option to totally disable the warning and
use it in tests.
Point to a non-existent file when testing to clear appcache properly.
Add space between `function` and `(` per style guide.

No functional changes.
comments and naming per review.
also check for missing section headers.
Merge branch 'pr-2749' into devel