main: added CPU structure and function definitions.
main: added controller structure and function definitions.
main: added memory map functions.
nes: added cart validation and mapper controller.
nes: added mapper number detection.
main: added memory resources support.
main: controller structures now hold both machine and private data.
nes: cart/mapper detection are now handled by the nes mapper controller.
main: controllers and CPUs are now only inserted when successfully initialized.
main: added memory read/write region support.
nes: added work ram region.