AND Operation Added

Added the AND Operation.
Refactored the Unit tests.
There is now a single test with cases for both the number of cycles used
and the program counter.
The Addressing tests now test both the ADC and AND operations
ASL Operation Added

Added the ASL Operation
Replaced the GetValueFromMemory method with GetAddressFromMemory to
support operations that write a value back into the same memory location
without having to figure out the address twice.