lots of little bugs fixed.