Add test for required custom elements
Return a Condition<?> instead of Callable<Boolean> from loadCondition()

This allows us to take advantage of the Condition API (for
instantiation and descriptions, especially) and avoid the semi awkward
and unexpected Callable<Boolean> return value. Condition is a type
more explicitly used throughout darcy to model that exact thing: a load
condition.