Fixed pull-ups on MX1/MX2 chips

I have generalised the core code so it uses the ->cnpu entry in the p32_ioport struct for mx1 and mx2 devices, and the CNPUE register for all others.