Various improvements. Ready for beta testing.