Normalise the variable names for the POW-difficulty settings

The variables for the pow difficulty had differing names and they were
awkwardly long. This normalises them to all be the same shorter
versions.
Standardise the order of pow_per_byte and pow_extra_bytes

In the protocol and in most places in the code, pow_per_byte is
handled before pow_extra_bytes. However in ntb-pow.c the functions
were taking the arguments in the reverse order which could be quite
confusing.
pow: Add ntb_pow_calculate_value and ntb_pow_calculate_target

This splits out parts of the ntb_pow_check function into two separate
functions so that we can pre-calculate a msg's POW value and compare
it against the POW settings for multiple keys. This will be needed to
filter out msgs depending on the key's difficulty settings.
Use the POW difficulty settings of keys to filter messages

ntb-crypto now pays attention to the difficulty settings in the
ntb_keys and doesn't bother trying to decrypt with them if the msg's
POW value is too low.
Filter out keys that are disabled

ntb-crypto no longer tries to decrypt messages using keys that are
marked as disabled in the config file.