Move types/block.h to topology/

- Move t_block and t_blocka definitions to topology/.
- Move functions that operate only on these types from typedefs.[hc] to
  the same place.
- Include the new block.h from all source files that reference the
  functions.
- Clean up a few headers that were including types/block.h directly.
  Most other code still depends on getting the type definitions
  indirectly through typedefs.h, but that can be fixed during subsequent
  changes.

Change-Id: I458e9cdc00a8d81665630f8123589b64d123790a
Move invblock.* to topology/

- Remove unnecessary includes of invblock.h.
- make_invblock() actually seems unused, but left it there for now.
  Perhaps the whole functions could be merged to block.h, but that will
  be easy to do later as well.

Change-Id: I5dc133b0bb66c9ec66704c3406f19ab217dade68