Add /testfor command support to command block. Adds BUKKIT-3813
Only filter data on block items, not all items.
Pull Contributing Guidelines and Requirements into CONTRIBUTING.md
Add link to CONTRIBUTING.md in README
Remove point about squashing commits.
Validate Server method input. Addresses BUKKIT-3687

CraftServer methods that implement the Server interface will throw an
IllegalArgumentException if a method cannot operate on a null input
and given a null pointer.

This causes methods to fail early and identify that a plugin is
responsible for passing in an invalid argument. This will only
change the exception thrown, if there originally was a thrown
exception. This helps with hunting down legitimate problems
with CraftBukkit.
Merge remote-tracking branch 'upstream/master'