[#96] Huge refactoring to remove the need to create providers for every literal in expression.