Subset of the old Clang Plugin needles

Most needles from current clang plugin minus some of the inheritance needles.
No, they should be comparable in size. I just figured I no longer needed it so might as well just do it eagerly.

For the needles, needles_by_line split I do it because its easier for me to have all the needles together when I process them (since I'm using loc as a maybe for things like warnings).