better tests. minor fixes. nodejs support.