A fast generic C++ library for applied and computational topology