Add check for VirtualDestructors

I'm thinking this may miss some corner cases, but for the obvious cases
I thought of, it works.
Support Virtual Bases

Virtual bases are another valid use of the virtual keyword outside of
functions.
Closes #31 and #39, Formatting on virtual destructor check