Update alexlib with IsPolygonal, various set tests

IsPolygonal is a generic polygonal number test function. Specific
polygonal number tests (IsTriangular, etc.) wrap this function with hard
coded values. The following functions are wrappers around IsPolygonal:
    * IsTriangular
    * IsPentagonal
    * IsHexagonal

Added various templated integer set test functions to determine what set
a number belongs in, including:
    * IsInteger
    * IsPositiveInteger
    * IsNonNegativeInteger
    * IsNonPositiveInteger
    * IsNegativeInteger