Added basic data classes. All except outline and date8601 are done. Still unsure whether impossible date creation should throw and exception or not; currently defaults to 1-1-1. Could also default to special value 0-0-0.