WIP for review

This has a bunch of ideas I'll document inline
Rules can be weighted and the passing score adjusted.