Improved VillagerAPI

Changed VillagerAPI to match the LivingEntityAPI.

**PR Breakdown:**
* Added some javadocs 
* ````getName()```` methods
* Changed API design to match LivingEntityAPI
We are not implying the Profession is null here... We wouldn't want to return null either.