Introduce comprehensive Horse API.  Adds BUKKIT-4426.

## Issue & Justification:
Minecraft 1.6.1 introduced the new Horse entity.  We need to expose an API for this new entity.

## Breakdown
This PR fleshes out the Horse interface and introduces a new HorseInventory interface.

The Horse interface exposes the following horse traits with getters/setters: 
- Horse Type (horse, donkey, mule, undead, skeletal)
- Coat Color (for HorseType.HORSE)
- Coat Pattern (for HorseType.HORSE)
- Speed
- Jump Height
- Temper (how likely the horse is to toss you off)
- whether of not the horse is tamed
- whether or not the horse has a chest

The new HorseInventory interface exposes a few additional properties:
- The horse's saddle
- The horse's armor piece
- The horse's chest contents, slots 1-15

## Larger Issues

The Horse entity exposes a more complex issue with some class structures within Bukkit.  While Horse implements an isTamed() and setTamed(bool), it *cannot implement Tameable* because Horses do not keep track of their owners.  If Mojang introduces other tameable entities in the future, we should consider adding more granular interfaces.

## Testing
Please see the associated CraftBukkit commit.

## Related
Associated CraftBukkit PR: https://github.com/Bukkit/CraftBukkit/pull/1189

This PR provides the same functionality as https://github.com/Bukkit/Bukkit/pull/889 (albeit with a slightly different structure), as well as quite a bit more.

This is my first Bukkit/CraftBukkit contribution. I've taken multiple steps to ensure I've done this right. Please let me know if there is any way I can improve.