added support for array, static, and template field types.

May or may not be the right approach to any of these three field types.  Feedback welcome!