[net-mark] Move types out of cf3.defs.h and into sub headers where they belong.

@ediosyncratic: Here, squash or merge at your convenience. I moved out the parts of cf3.defs.h that I could, but some parts related to attributes had to stay, because attributes are shared everywhere.