fixed: field-list type to std::vector<> to keep field order relative to registration order
added: visitor-subject implementation
initial implementation for scene objects