fix($location): remove query args when passed in object

Request Type: 

How to reproduce: 

Component(s): $location

Impact: small

Complexity: small

This issue is related to: 

**Detailed Description:**

Please read the description from the issue #6565

**Other Comments:**

Query args will be removed from $location search object if they are passed in as null or undefined object properties.

Uses Object.keys() to fix the bug so it will not work for IE8

closes #6565