0.11 wip

changes from 0.11 -> master

only minor changes in lib/ but tons in test/. I've made the tests pass with Node 0.10 but still failing with Node 0.8. Looks like way too much work to figure out the 0.8 stuff so I might defer that work for now.