.
Buenas, juankah.
Sobre la 1º pregunta: ¿Qué programador estás usando? En el mío, por ejemplo, tengo que asegurarme de marcar la tilde en la casilla de configuración MCLRE, puesto que de lo contrario, el PIC conecta directamente la pata de reset a vdd y no deja al programador meterle los 12v necesarios para la programación.
Sobre la 2º: Hay que aceptar que los pulsadores no son perfectos y que a veces generan "rebotes" como estos:
(http://img189.imageshack.us/img189/1511/pulsador.gif) (http://img189.imageshack.us/i/pulsador.gif/)
Lo mejor sería colocar un capacitor entre el pulsador y gnd, además de agregar en el programa del uC una pequeña demora (unos 50ms andan bien) a partir de que se lee el pulsador, para dejar pasar los rebotes.
Espero haber sido de ayuda.
Saludos.