[sd_mr0573] Implement wrappers for Script object

Easy to use, now no extra code, script object(s) is auto created and registered.

Usage examples:

*** SimpleScript ***

short version for one function

SimpleScript("script_name")->GetAI = &GetAI_realization;

for more than one function

SimpleScript ss("script_name");
ss->pGossipHello = &GossipHello_realization;
ss->pGossipSelect = &GossipSelect_realization;

*** Scripter ***
for registering multiple scripts at once

short version for scripts with one function

Scripter s;
s.newScript("script_name_1")->GetAI = &GetAI_realization_1;
s.newScript("script_name_2")->GetAI = &GetAI_realization_2;

for more than one function

Scripter s;

s.newScript("script_name_1");
s->pGossipHello = &GossipHello_realization_1;
s->pGossipSelect = &GossipSelect_realization_1;
s->GetAI = &GetAI_script_name_1;

s.newScript("script_name_2");
s->pGossipHello = &GossipHello_realization_2;
s->pGossipSelect = &GossipSelect_realization_2;
s->GetAI = &GetAI_script_name_2;

etc.

For registering script without error reporting (very rare case) need use RegisterScript(false) function from Scripter class instead of RegisterSelf(false) from Script object.

Scripter s;

s.newScript("script_name");
s->pGossipHello = &GossipHello_realization;
s->RegisterScript(false);