Updating the lib to be more consistent with other fantasy land repos

Uses QuickCheck for better testing and refactored all the file places to keep it consistent with fantasy-options, check, environment etc.