Many fixes, and enhancements.