This commit adds a new helper object
Opm::WriteRestartFileEvents
that identifies when a restart file output event occurs as well as
the most recent output event prior to a particular report step. We
implement this facility in terms of a dense bit vector that wastes
up to 63 bits of space. Most of the logic is devoted to finding the
most recent previous output event, of which the core routine is
counting the number of leading zero bits in a 64 bit value. We've
elected to implement this in a portable manner using binary search,
although most implementations provide efficient intrinsics for this
operation, e.g., GCC's __builtin_clzl. In C++20 we can use the new
function std::countl_zero() from <bit>.