Retain existing URL parameters across different view types

A new method ```update_url_parms``` has been added to retain existing URL parameters in the request query string. This method is currently being called while setting the urls for some of the UI components like toolbar buttons and paging controls.
The main function of this method is to update the URL parameters based on the UI control type while retaining the existing parameters (with the exception of a few) at the same time.
This should address some of the issues related to routing errors or code crashes due to the absence of certain URL parameters.

Other than this change, a missing route for 'download_data' was added as well.

https://bugzilla.redhat.com/show_bug.cgi?id=1130223
Just researched ```parse_query```, and it works great for a string like ```?type=grid```

```
1.9.3p484 :003 > Rack::Utils.parse_query URI("?type=grid").query
 => {"type"=>"grid”} 
```
However, the input parameter could also be a string like ```&refresh=y```, in which case ```parse_query``` returns a ```{}```, and unfortunately will not work.

Therefore I have resorted to parsing to get(or construct in this case) the hash value that we are looking for.