#25 use a separate signature and name property for packages, classes, fields and methods