Merge pull request #131 from awong-dev/static_build

Ensure substitution failure occurs in is_convertible before constructor access check
Merge pull request #132 from awong-dev/underlying-type

Underlying type
Clean up defines for type_traits

Change-Id: I10f228211fe5346f81246c9bdc70f50a0f90675f