more cleanup and groundwork

Quite something, but only internal organization. Major points are:
- lodash 1.0.0 came out yesterday and I'm using it, so plz `npm update`
- split up things, eg new `util.js`
- more tests, particularly for `test-helper` itself (!)
- new assertions `isPlainObjectOrFunc` and `isProperSubset` (for our own tests); + some tests for *them* too, but these are incomplete - it's getting time now for https://github.com/busterjs/referee-combinators/issues/5 , "Don't rely on AssertionError from failure"
- needed it so I made it: `forOwnRec`, recursive version of lodash's `forOwn`. Just find it interesting coz it's re iterators/generators/lazy lists and that might be an interesting thing to look at when it's about combining assertions. But it definitely needs more care :}

Remark: I'm used to (and convinced of) committing small things rather often. Plz tell me if you're offended by this. If it's the case then I know a way to have only one commit in the pr, without losing history. It's somewhat tedious though...
In fact I thought my merging from busterjs/develop into my develop would give such an overall diff. Yet it seems not really that, I'm missing eg. util.js. Or had I added it before? Whatever...