GRAILS-11572 - introduce BuildableCriteria

This is not complete and is just a spike to explore that this approach will work out.
fix copyright and replace tabs with spaces