So I've run into these issues during my last project and couldn't find anything out there on them so I'm posting them here on the theory that they will help someone someday.

One of the symptoms of insufficient clock speed (Mhz) is that Serin2 starts dropping the last bit in characters received. This means things like instead of an 's' you get 9 cause you lose the last bit of the ascii character.

Yes, you really do need a MAX232 and it really does need those capacitors.

Yes pull up resistors are part of your life now. No one mentions them, but they're assumed in a bunch of different places.

The number of port you are going to have problems is directly related to the number of functions the port can perform. Pick a port for general I/O that does A/D or comparitor function (let alone osc or other) and you'll be searching forever for the commands that turn it off.

Hope these help someone - would have saved me a bunch of time.