Add raw sound string playSound method. Adds BUKKIT-2443

A method has been added to Player which allows the server to send a sound string to the client. Assuming the client has the specified sound, it will be played. This is needed by the implementation of the /playsound command.

Remapped by Srg2Source from Bukkit/CraftBukkit@64d45a2fddf6c0c27b52f4badae057c81c55f720
Add PathfinderGoalPanic for diff visibility.

Remapped by Srg2Source from Bukkit/CraftBukkit@12a38ae183656710cd9c215a20b357ffba9d4298
Add timeout for Panic goal. Fixes BUKKIT-4531

Remapped by Srg2Source from Bukkit/CraftBukkit@e094283a936c5307479126b35e11f7f392131d62
Revert to 1.5 despawning behaviour for Ocelots and Wolves. Fixes BUKKIT-4449

Remapped by Srg2Source from Bukkit/CraftBukkit@8a6ca9b29e2c7efda1ce98611ca25254fe42704c
Indicate help is a command. Fixes BUKKIT-4642

Remapped by Srg2Source from Bukkit/CraftBukkit@4b007e1d4f33c8289669f3b7fd83133d3dcadf56
Ignore null sound by contract. Fixes BUKKIT-4641

Remapped by Srg2Source from Bukkit/CraftBukkit@3b7c805621236a7386a9ffb38d907ee059caf845
Implement Leash API. Adds BUKKIT-4459, BUKKIT-4583

Remapped by Srg2Source from Bukkit/CraftBukkit@b243dc3b3dc60cb8b822bf06aee436f9960ed2ef
Update players when coming into view of vehicle. Fixes BUKKIT-4628

When only considering trackers from player perspective, attach entity
packet could be sent before a packet for a respective vehicle is in view
and will, in turn, be ignored.

This adds another notification when the vehicle comes into view to cover
all cases.

Remapped by Srg2Source from Bukkit/CraftBukkit@e754175c2374d7e7335ecd2ff7df5f612ed3e3d6
Fix mistranslation in isPlayerCreated() for IronGolems. Fixes BUKKIT-4543

Remapped by Srg2Source from Bukkit/CraftBukkit@35877fa69bd5d9f52b65a69e7cd3d3c7f9e293b7
Fix off by 1 error for spawn protection. Fixes BUKKIT-4154

Remapped by Srg2Source from Bukkit/CraftBukkit@5af5f5df2581d478828fc77e0f8672f749ebb7a9