Enable extend to accept multiple arguments

Currently, extend only takes a single argument. If you want to mixin a module, you have to use _.extend in one of three ways:

1. before:
```
myObject = _({}).extend(SomeMixin, {
  ...
});
extend('myNamespace', myObject);
````

2. after:
```
extend('myNamespace', {
  ...
});
myNamespace = _({}).extend(SomeMixin, myNamespace);
```

3. during:
```
extend('myNamespace', _({}).extend(SomeMixin, {
  ...
}));
```

I want this:
```
extend('myNamespace', SomeMixin, {
  ...
});
```

Internally, we're already using _.extend. I'd like to take advantage of extend's variadic capability.

Todo:
- [ ] accept multiple arguments

Thoughts?