Use player as point of reference for min volume. Fixes BUKKIT-4640

When the minimum volume is being used because the distance is over a
threshold, the unit vector delta should be added to the player's
location, instead of where the command specified location.

This change makes the player's location the point of reference for
playing sounds when distance to volume scale is lower than minimum
specified volume.
Pulling all pending Bukkit-JavaDoc changes
Updated version to 1.6.2-R0.1 in pom.xml for Beta.
Updated version to 1.6.2-R0.2-SNAPSHOT for development towards next release.
Relax generic types for ConfigurationSerialization

The method signatures are unnecessarily strict for the generic signatures.
This change may cause a compile-time error for extending classes overriding
methods, but no byte signature or compile time call signatures change.
Add ConfigurationSerializable-Serializable compatibility. Adds BUKKIT-4662

This commit adds a comaptibility layer for use between
ConfigurationSerializable and Java Serializable, such that when using the
Bukkit object streams, any ConfigurationSerializable acts as if it
implements Serializable for purposes of that wrapped stream.

Included are a set of unit tests for the stream with a check for backward
compatibility across versions.
[BREAKING] Use event class instead of event for timings. Fixes BUKKIT-4664

TimedRegisteredListener uses a reference to the first event fired. This
causes a memory leak in the server for any references that event has. This
changes TimedRegisteredListener to only store a reference to the class of
the event.

This change is intentionally a breaking change, as it is an obscure part
of the API. A non-breaking change would require the leak to be maintained
or an immediate update for any plugins using the method, as it would be an
indirect break.

A unit test is also included to check behavior of shared superclass
functionality.
POM Changes
Measure Timings Duration
Timings Paste Command
Enchanced Timings
Add PlayerItemDamageEvent
BungeeCord Support
Add Arrow API
Add Particle API
Define EntitySpawnEvent and SpawnerSpawnEvent

Defines EntitySpawnEvent and SpawnerSpawnEvent. Adds BUKKIT-267 and BUKKIT-1559
Entity Mount and Dismount Events
Update Depends

- All of these changes have been reviewed to be binary compatible and in general contract compatible with previous versions of the libraries.
Console Command Completion

Implement command tab completion in the console. Adds BUKKIT-4168

To accomplish this 2 changes to Bukkit were required:
- the player check in Command.tabComplete() had to be removed
- the SimpleCommandMap prepends the / only for players
InventoryClickEvent getClickedInventory

Add InventoryClickEvent.getClickedInventory. Adds BUKKIT-4495
Plugins currently have to do the logic themselves on the raw slot ID
in order to determine the inventory clicked. This provides the logic for plugins to
readily identify which inventory was clicked.