feat($location): add queryString method

Added new queyString method to locationProvider to allow for custom query string parsers. The method expects an object with a stringify function for encoding and a parse function for decoding.

For example you could use node-querystring:
```javascript
var qs = require('qs');
$locationProvider.queryString(qs);
```
or JSON:
```javascript
$locationProvider.queryString(JSON);
```