woot finally done!
opps, fix tests