Initial commit of validation prototypes
Restructured header&source content,added Result << op, debugged all
Added msg prefixes, added error handling in conditions, extended tests
Simplified usage example in TestValidate
Simplified check structures to allow for better UX :)

Check now is not templated but also not derived: the check struct instances have no common parent. The drawbacks are obvious, but it makes all derived structures much simpler and cleaner to use, see test example.
Renaming types&functions,checks handle errors,validate takes init list

Several types & functions have been renamed. Checks now get the info whether an error occured and return boost tribool instead of bool, the third bool state being "error".
Thus the check decides whether to swallow the error or to return "error". The condition can then decide what to do if the check returned the error.
validate now takes init lists & vectors, but no variadic parameter lists.
Renamed namespace & subdir to "valid"
No error handling by checks,error=false,tribool & toBool abandoned too

Checks dont do any error handling now and thus the info whether an error has happened or not is not passed around anymore. Therefore there is also no need for the tribool construct anymore.
Furthermore the toBool functions have been removed and the different conversions are now directly handled inside the checks.
Removed "auto" inside "try-catch" since redundant as noticed by gicmo
Replaced "__" with "tmp_" in var names as suggested by gicmo
Conditions use pointer-to-member,not lambdas; as suggested by stoewer
Added test for running pointer-to-member on different parent instances
Fixed all issues in #228, thus:

-Removed "use namespace std" everywhere (not just headers)
-Abandoned naming "_name" in favor of "this->name"
-Dropped "vector" overload of "validate"
-Dropped "all" getter from "Results"
-Added "getWarnings" & "getErrors" from "Results"
-Changed the way prefixes are added to msgs: not in the ctor anymore but only upon output by "<<"
-Dropped all overloads in checks except for one "bool operator() const" returning implicit bool conversion or "val.empty()" boolean
-Changed the way the call to validate is written: now all is written inline
-Made the headers of conditions more consistent: all is "const &" now, though this is nonsense for the pointer-to-member
Tiny "std::" addition for consistency
Merge pull request #228 from balint42/validation_concept

Validation concept

LGTM