Made a counter core

This core uses generics and a reset so I can have a customisable counter
core
Simplified the bit down converter code

Used the previously created counter core to simplify the down converter.