Fix anvil

Some ~~idiot~~ clever coder, declared the post terrain of the anvil construction as "t_anvil", while it's actually "f_anvil". Very embarrassing for that unnamed individual.

The game did not check this. It does now.

- Fixes #7335
- And adds check for construction definition (pre/post terrain/furniture, skill, components, the usual).