Refactoring setting up better support for nothing/[] in the type system. refs #60, but not done quite yet