fix macros for noexcept
fix index_tuple implementation
add types::apply, types::quote
add comparison and arithmetic type functionals