Detect -> accesses on uninitialized pointers

This detects `->` accesses via uninitialized pointers as discussed here https://github.com/danmar/cppcheck/pull/421#issuecomment-54943202

Some concerns:
* not at all sure the loop which traverses the AST until it finds a suitable parent is fast enough in generic cases
* one of the testcases now emits two warnings, both correct, which means that the test has to expect them is some specific order, I'm not sure if that's good
> The C++ specification explicitly says that E1->E2 is the same as (*E1).E2 even if E2 is static.

Feel free to double check. I looked here:

http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2005/n1905.pdf

Look at Chapter 5.2.5. Item 3.