Fixes #402
- Use basic_tuple instead of closure<> for the inner storage - Make sure the assignment operators are constexpr - Copy the unit tests from closure<> (closure will eventually be removed anyway) Fixes #165