Work in progress - Reflection (enum, group, package pending.)