Differences between ripple counter (e.g. 74LS161) and CMOS 4040
You can use a  74xx73 J-K FF, which is negative edge triggered. There are hack-y ways of doing it with resistors &amp; capacitors etc.
One of the fundamental differences between the 4040 and the 74xx161 is that the latter is a synchronous counter and the former is a ripple-carry counter. It can be a critical distinction in some applications. That's why there is a terminal count output on the '161 — to allow multiple 4-bit units to be cascaded into a wider synchronous counter. Otherwise you could just use the MS bit.
A Johnson counter could be made with a shift register. You require a lot of flip-flops to make a counter with 4096 states. 2048, to be specific.