adds functional key
adds typename getter
adds fullname to traits