Added Boost.TypeIndex library

cherry-picked commits 70f765f7919e5ccf0cd504a27b33447a559dac77 and be57fae2ff81a0240f768064d7226357c9c14337  from develop branch