Spa type refactoring
- Use a more complete API to introspect SPA types
- Avoid the need for the Tables enumeration; the tables are now registered with a string
- Avoid the need for initialization, work directly on spa_types and other static data
- Allow working with Object pods that are not Params; the PARAMS table was previously hardcoded in the pod implementation
- Add a different dynamic type registration system, closer to how spa type works. The only regression is that we can no longer register additional custom object fields (custom SPA_PROP_* for example), but this feature can be re-added later
Edited by George Kiagiadakis