Fixed a lot of errors by fixing basic type issues with the Requirement constructor. Also added a requirement constructor that takes no arguments.