Note that goog.isObject(data) returns true if data is a function. So parseFeatures will now attempt to parse data using readFeaturesFromObject if data if a function, which changes the current behavior.

For the record:

```
typeof function() {} === 'object'  // false
goog.isObject(function() {})  // true

typeof [] === 'object'  // true
goog.isObject([]) === 'object'  // true

typeof {} === 'object'  // true
goog.isObject({}) === 'object'  // true
```