Make def[x] return the most-valid object type

Not so sure how to put the meta for that.
The tag will now return the most-valid object type, meaning if the
definition is 'p@player', a dPlayer will be return, if it's 'n@1', an
NPC will be returned, etc... if it's unknown, an Element will be
returned.
Also including a public API function to handle it!
Also,  reorganize element.as_ tags, clean their meta, and add a few
missing ones.
Add item.enchantments.level[name]

Quick item enchantment checking tag. Nothing special.
Merge pull request #658 from Morphan1/master

Inventory-related. Imagine that, eh?
Merge pull request #657 from mcmonkey4eva/master

Pull request for new functionality
Add item.is_enchanted

Straight-forward enchantment-related property tag.
Merge pull request #662 from Morphan1/master

Déjà vu
Merge pull request #661 from mcmonkey4eva/master

Pull request for not particularly much
add &at escapes

To avoid accidental creation of dObjects from user input (Probably not
an issue, but better safe than sorry!)
Make escape tags return an element

Now we can do weird things like escape.substring[5]:po|ta|to
(To match the similar Math: commit)
Also, clean the ParticleEffect meta.
Add util.date.format[x]

To allow the application of custom date/time formatting

The whole util. tag range needs to be update to a more modern system...
Fix the cooldown command

Setting a cooldown on a player would set it global too... because
somebody forgot that you must break out of switches.
Merge pull request #663 from mcmonkey4eva/master

Pull requests for escapes and metas
Add npc.is_engaged

A quick tag to determine whether an NPC is considered to be 'engaged'
(It appears somebody just assumed this existed
when really it didn't 0.o)
Plus, more meta-interlinking! Hooray!
Merge pull request #666 from mcmonkey4eva/master

Pull request for the dark lord of the underworld