Add date type inference.
Make error messages stand out.
Cleaner, refactoring