BETA: Location improvements.
	* Implemented IPositionable interface, to allow more OOP and proper hierarchy.
	* Removed L2CharPosition, replaced with Location.
	* Removed many instantiations of Location objects.
		* Object creation reduced drastically!
		* /!\ In some places may still be required to create a new object.
	* Replaced method L2Spawn#getLocation() with L2Spawn#getLocationId(), since interface require to implement getLocation().
	* Replaced L2ItemInstance#getLocation() with L2ItemInstance#getItemLocation(), since interface require to implement getLocation().
	* L2Spawn is backed with a Location object instead of x,y,z,heading ints.

TODO:
	* Use same system to back x,y,z,heading in L2Object/L2Character if possible.
	* Use the getLocation() in more places instead of getX(), getY(), getZ().
	* Implement methods using IPositionable to reduce duplicated code.

git-svn-id: http://svn.l2jserver.com/branches/unstable/L2J_Server_BETA@6079 d34dfa0f-f91c-0410-86dd-cf06f19dd0ad