saving changes, going to add better casting on result
- casting result uses class name from space
- gets proper result when subclass of template is returned