The counter can be used either as a BCD counter or an Excess-3 counter by using negative-edge triggered T flip flops, NAND gates and 2-to-1 multiplexers.
Asynchronous counters are also known as ripple counters. Ripple counters of any modulo are easy. Synchronous counters other than binary are royal bears to design, especially if you want fully synchronous counts, resets parallel loads, etc. Thank your teacher for sticking with the ripple counter.