Changed test/spec.js filter condition.

Files in te test/spec/ folder are only run by phantomjs when the filename
exactly ends with '*.spec.js'. This prevents from swapfiles etc. with similar
filenames to be seen as test scripts.
Improved parseQueryString() support for equal keys

When a key has multiple occurences in a query string, the values are
grouped in a list. "?a=1&b=2&b=3" is parsed as { a: '1', b: ['2', '3'] }.
Added tests for the multikey querystring support
Replaced some tabs with spaces
Check for obj.prototype before reading or assigning
Added Headers to http.js
Added the durandal edge article to the docs.
Updating library version indication.

-Fixing gitignore to not ignore some of the 2.x docs that were being
left out.
Updating dependencies on core packages and starter kits.

-Updated Bootstrap to 3.0.2
-Updated FontAwesome to 4.0.3
-Updated Knockout to 3.0.0
-Updated RequireJS to 2.1.9
-Updated RequireJS Text Plugin to 2.0.7

Core libs, starter kits and platform packages updated with these
versions as well as bower and package version metadata updates. The
samples have not yet been updated.
Updated the samples to latest libraries.

-Fixed up css for Bootstrap 3.
Added lib update note to changes doc.
Added more infor in the changes doc.
Fix Issue #380: Replaced html bindings with text bindings in sample application codes
Fix Issue #375: Potentially insecure code in Durandal example app
Fix Issue #372: Better system.guid implementation
Fix Issue #385: Routes are case sensitive (and should not be by default)

-Added an api to the root router called `makeRoutesCaseSensitive` Call
this api to restore the previous case-sensitive route pattern behavior.
Attempting to fix 3rd level child router bug.
Fix Issue #357: Child routers which are 3 levels deep are broken with 2.0.1
Fix Issue #376: returning false in canDeactivate strips queryString
Updating for Kickstarter.