I still have resort to some assembly language for things like interrupt routines, and controlling the lower power modes, right?

Wrong! mspgcc has simple extensions to the standard C language are provided to make interrupt service routines easy to write, without a single line of assembly language. Facilities are provided for controlling the MSP430's lower power modes, too. See the mspgcc manual for details.