Reflection code complete and working. Needs a little bit of documentation