> […] what I believe to be the better way (using forward-decl everywhere you can get away with it)

Just do whatever you want, I don't care anymore