add operator whitespace support and clean more stuff up