CATKE: a turbulent-kinetic-energy-based parameterization for ocean microturbulence with dynamic convective adjustment