Hola en realidad por lo que veo lo que tu quieres es desarrollar un programador integrado a tu aplicacion en ese caso creo que deberias echarle un vistazo al archivo de especificaciones de la familia del PIC, creo que no tendras problemas en entenderlo.
Comentame como te va en tu trabajo, una sugerencia es que debes ver la explicacion del puerto ICSP.
Te envio el link para el archivo para que lo descarges
http://ww1.microchip.com/downloads/en/DeviceDoc/33023a.pdfSUERTE...