Big map object API overhaul - Part 1

NOTE: The map code will have to be upgraded for this to be functional.

This API change makes map objects auto-register to the object supervisor
and set their object ID.

The new API also permits to create a map object without having to add it
to a layer in a second statement.
The object can only be declared with a layer, and is owned by the engine,
making the scripting API more streamlined.

The same will be done with Map Zones, dialogues and events eventually.

Part of #410
Turned useless lua new array statement to nil values.
Started adapting the maps to the new map object API.
Merge branch 'master' of github.com:/Bertram25/ValyriaTear into new_API
Upgraded the layna village scripts to the new API.

I also streamlined the way sound object are registered and did some cleanup.
Kept a bit on upgrading the scripts...
Removed the last direct members access from bindings in the map mode.

Kept on upgrading the scripts...
Kept a bit on upgrading scripts...
Adapted the layna forest scripts to new API.

Streamlined the way the Lights are declared. Fixed enemy sprite declaration code.
Kept on upgrading the maps. fixed the riverbank by night map.
Kept on upgrading the maps a bit.
Finished upgrading map, battle, help, tutorial and config script to the new API.

Also fixed a few old mistakes there while seeing it.
*.CreateObject() -> *.Create() for shorter scripting function names.

Also fixed the faulty enemySprite copy constructor. The default one is just doing fine.
Fixed a few camera and virtual focus invocation.
Removed a now redundant way to declare Lights map objects.
Standardized the way save points and halos were created to be the same than other map objects.
BeginDialogue() -> StartDialogue() and AddObject() -> AddItem() for Treasure/Shop classes.
Some name changes in event related functions.
Readded support to register Treasure and triggers on any map object layer.
Made dialogues auto-register to their corresponding dialogue manager.

Also fixed the ShopMode AddItem() scripting function name.