infra: Add PRE_*_HOOKS for every step

Add PRE_*_HOOKS to all the different steps through which a package may go.

This will help avoid using POST_*_HOOKS to do tasks that should be done
in the PRE_*_HOOKS of the next step.
Otherwise, when the user would do a make foo-re<step>, this would not do
what was really intented, the POST_*_HOOK of the preceding step not
being executed.

Signed-off-by: Maxime Hadjinlian <maxime.hadjinlian@gmail.com>
---
Changes v1 -> v2
  - Move the PRE_*_HOOKS after the message (Arnout Vandecappelle)
  - PRE_LEGAL_HOOKS executed even if condition is not met (Arnout Vandecappelle)
libenca: Move build host tool to PRE_BUILD_HOOKS

The make_hash host tool, should be built during a PRE_BUILD_HOOKS and
not a POST_CONFIGURE_HOOKS.

Signed-off-by: Maxime Hadjinlian <maxime.hadjinlian@gmail.com>