[C++11] Change DebugInfoFinder to use range-based loops

Also changes the iterators to return actual DI type over MDNode.