Massive refactoring of concepts module (Issue #9)
Add NullablePointer concept (Issue #9)
Fix issue with Constructible concept (Issue #9)
Changed Requires to Require, added Semiregular and Regular concepts (Issue #9)