meteor/meteor — pull request #2280 by cmather (2014-07-08 03:03:05+00:00)
Title: Fix Meteor._inherits to copy Parent static properties

**Problem**
Meteor._inherits does not copy parent function properties to the child function.

Example:
```javascript
Parent = function () {};
Parent.someStaticProp = true;

Child = function () {};
Meteor._inherits(Child, Parent);

// expect Child.someStaticProp => true
```

The reason is the _.each helper does not properly iterate over function properties because it uses the length property for the iteration. But functions also have a length property which tells you the function arity (how many args).

**Solution:**
Don't use _.each to copy parent properties to the child function. Instead,
iterate directly and copy hasOwn properties to the child function.

An alternative solution is to make the _.each helper work properly with
functions in the underscore package.