BETA: Cleanup after [6104]
BETA: Fixing multiple hits made by npcs which had base attack type FIST it seems that only players are hitting twice.
	* Reported by: Tryskell, jurchiks
BETA: Reworking item enchanting again.
	* Renaming enchantData to enchantItemData.
	* Renaming enchantOptions to enchantItemOptions.
	* isBlessed, isSafe, isWeapon is going to depend on item's type not on attribute over !<scroll element!
	* Adding missing check for support item armor/weapon.
	* Preventing from getting item enchanted when base scroll chance is 0.
		* Note: In retail if u enchant armor to +20 and u use safe enchant scroll to enchant it to +21 it may success but item's enchant isn't changed.
	* And some minor code/javadocs changes.
		* Thanks to: jurchiks
	* Thanks to: Nos
BETA: One more item enchanting rework:
	* Moving package model.enchant to model.items.enchant
	* Separated logic of EnchantItem into AbstractEnchantItem
	* Renamed EnchantItem to EnchantSupportItem as it was meant to be.
	* Fixed InventoryUpdate when using support item it wasn't updated.
	* Suggested by: jurchiks
BETA: Fixing minor typo causing buy lists used from L2MerchantSummonInstance to sell items with x51 price instead of x1.5
    * Removing code duplicates after [6149]
    * L2Crest now implements IIdentifiable interface
BETA: Retail like distance checks for couple actions.

Reported by: zatei
Reviewed by: Zoey76, zatei
BETA: L2Item now implements IIdentifiable interface.

Suggested by: u3games
BETA: Reducing memory usage of !NpcStringId and !SystemMessageId static data.

Reviewed by: UnAfraid
BETA: Reworking a bit pet pickup method.
	* Fixed wrong use of item.pickupMe method it must be used to remove the item from the ground NOT to to give it to the character picked it up!
	* Using !PetInventoryUpdate instead of !PetItemList
	* Fixed double item give to the pet and random party in case that party had not item looter option.
		* Reported by: plasan, valanths1990
BETA: Abstraction for InventoryUpdate packets.
BETA: Fixing more problems with transformations like Vanguard, Inquisitor.
	* Those that has skills from current player's profession get's deleted on untransform but they should not.
	* Reported by: lucan
BETA: Abstraction for most item related server packets.
BETA: Fixing wrong format in AbstractItemPacket for quest items.

Reported by: Tavo22, lucan
Reviewed by: UnAfraid
BETA: Fixed NPE in L2Attackable.
	* Reported by: lucan
	* Reviewed by: xban1x, Nos, jurchiks, Zoey76
	* Patch by: Nos
BETA: Cubic fixes:
	* Fixed cubic not being removed.
		* Moved cubic related tasks to own class/package.
		* Reported by: Twist, Aristos
	* Fixed wrong cubic count.
		* Reported by: Midas, Twist


'''Note:''' More work is required, unhardcoding for example.
BETA: IPositionable interface update.
	* L2Object now extends ObjectPosition.
		* No more need to use getPosition().getX(), now is just getX().
	* ObjectPosition now extends Point3D.
	* IPositionable now includes heading and instance id.
	* Changes to teleToLocation method in L2Character.
		* 1 main method, with all possible overloads.
	* Cleanup of L2Object.
	* Point3D no longer implements Serializable.
	
	* Reviewed by: Zoey76, UnAfraid, Nos
	* Tested by: zatei
BETA: Moving Enums to seperate package.
	* First patch of more to come, will be done in parts 4-6 enums at a time.
	* Reviewed by: Zoey76
BETA: Small mistake on commit [6171].
	* Reported by: UnAfraid
BETA: Adding more interfaces:
	* ISpawnable
	* IStorable
	* IRestorable
	* IDeletable
		* Patch by: UnAfraid
	* INamable
	* Enforcing IIdentifiable on Macro, L2Clan
		* Patch by: xban1x
		
	* Reviewed by: Nos
BETA: Libraries update:
	* '''C3P0 0.9.2.1''' from C3P0 0.9.2.
	* '''JNA 3.5.1''' from JNA 3.3.0.
	* '''MySQL Connector 5.1.26''' from MySQL Connector 5.1.23.
	* '''JavaMail 1.5.0''' from JavaMail 1.4.6.
	* '''JDT Core Batch Compiler 4.3''' from JDT Core Batch Compiler 4.2.2.
	* '''JNA 4.0.0''' from 3.5.1.

Tested by: Konstantinos, Zoey76