Improve naming convention for generics.
Fix: implicit typing corresponds to Object rather than CVertex -> explicit it.
Remove useless dependency.
Update to more recent compiler.