I bought a used Tech1A tool. If cost is not important, it is the best. It is old technology, but it can read data and output signals to test circuits in the car. It can reprogram the CCM, take recording during operation to be viewed later etc.
There are laptop programs and cables that will do some of the same functions though and might be better for most people.
looks like this:
http://www.ioffer.com/i/125573691