Merge pull request #139 from ivan-mogilko/feature_wfn256

Extended WFN Font support
Engine: implemented AudioChannel class

AudioChannel objects replace bare SOUNDCLIP pointers in the "channels" array. AudioChannel is supposed to group channel-related variables.
This commences a change towards safer clips handling.
Common: introducing UniquePtr<T> class
Engine: work with SOUNDCLIPs as with unique pointers

This enforces the rule that the clip object can only be kept at one channel or temporary storage at a time, and deleted automatically when released from use.
Engine: protected AudioChannel's data from public access

This also replaces overly accesses to SOUNDCLIP functions by resolving channels array with the use of the clip pointer instead.
Engine: replaced ScriptAudioChannel with new AudioChannel class

This gets rid of dummy ScriptAudioChannel class which did not do anything but stored channel id. Now all channel script functions will work channel data directly.
Engine: moved AmbientSound objects to SoundChannels