handleMixins should iterate forward when invoking mixin.mixconfig

invoking mixin.mixconfig while iterating backwards over resolvedMixins for an instance does not allow modification of a mixin's configuration from a downstream mixin. This patch fixes it.
We use `_.extend {}, #...` in most cases to create a new object so as not to mutate the original definition of the mixin/prototype. These extensions occur on a per-instance basis per the design philosophy of factoryjs