Several (huge) enhancements