I haven't done much PIC stuff since awhile, so I haven't follow the most recent news and stuff, but the one I prefered for their built-in feature were PIC12F683, PIC16F690, and PIC16F887... Not sure why I don't have any 18F one in the list... weird ... add PIC18F4431 then.

Those models above allows you to do lots of stuck but USB. 3 size, many built-in feature, really decent codesize too.

If you don't have any programmer, I always suggest to grab a PICKIT 2 + Development board package (PICkit™ 2 Debug Express or PICkit™ 2 Starter Kit).

Sure PICKIT 2 is obsolete now, but cheap and still quite handy and capable of. It's standalone application provide some great features such as Terminal (to test your serial communication without having to use any extra hardware or PC serial port) and a 3 channel logic probe (ok not a really fast one, but still handy).