handle symlinks
support for broken symlinks
no need for custom cast here
found a prettier solution
typeName should support constant references too
routine to detect function names
c++ reflection support