Rules 'n' things

Follow-up of #1276. Some fixes, some new functionality.

The `kernel_required` rule passes on information from a sub-make to the top level. A check file is created on each level if REQ_KERNEL is set, and is passed on from level to level, until it ends up at the top level.
The downside is the rules don't look great, but I'm not sure there's a way around that.

x64-related: the evansport arch is not included in Synology's x64 arch, probably because it's 32-bit (?).

I like that idea :) Implementing it otoh...How would you check for the output of the kernel-required rule in the `all-arches-testing` rule? I can't call it from within the other rule and do a check on `$?` without the exit code stopping the other rule too (afaik)

Here's one way that works: Replace the contents of `all-arches-testing` with this:
`@$(MAKE) kernel-required && $(MAKE) all-archs-skip-x64-duplicates || $(MAKE) all-archs-skip-x64` (renamed to clarify)
In addition, we'd need to add two rules (with the `for` loops in L337-L340 and L343-L346), and two more to implement the same approach in the `all-archs-dsms` rule.

I'm not sure I like having to add all those rules if it's not needed though...suggestions on a better approach?