Fix Maximum Quantity in Salvage configs
Cleanup RepairConfig leftovers in SalvageConfig

Some copy/pasta I forgot to remove
Let config key take priority here
Check permission before sending anvil messages
Actually fix maximumQuantity reading from config

Now we try to automatically detect the maximum quantity if possible and
fall back to the config if the user has set a value there.

Also fixed the feedback message which said „Minimum quantity” instead
of „Maximum quantity”
Added missing Salvage permissions to plugin.yml
Remove this check here, allows Salvage in Adv mode

We’re already checking if the players game mode isn’t CREATIVE, so we
can safely remove this check.

Fixes #2059
Save users asynchronously
Remove PvpLogger checks

No longer needed when testing with Combat Tag v6.1.4, the NPCs have
metadata „NPC”.

Fixes #2017
Fix an IndexOutOfBoundsException: Index: 0

In SaveTimerTask.java

Fixes #2039
Update changelog
Alchemy should fire BrewEvents

Fixes #2041
Calculate Alchemy XP based on potion stage

Adds #1926
Fire brew event after outputs have changed

and before experience is granted.
Part 2 of fixing #2041
Check if input is a water bottle first
Add mcmmo.skills.salvage permission to plugin.yml

Fixes issue where players would have access to the Salvage child skill
by default.

Mentioned in #2075
MCPC+ is now known as Cauldron
Workaround a CB bug by tracking piston events

There is a bug in Craftbukkit that causes piston events to fire
multiple times. We need to keep track of the extend and retract events
to see which piston events should be processed.
Fix bugs with pistons

This commit improves piston tracking and fixes a couple of bugs with
block tracking.

Fixes #2043
Fix typo with XP_Modifier in tools.default.yml