First part of AI refactoring. Trying to split AI into three distinct parts:
- Core with callback handling and processing
- Logic (goal decomposition)
- Utility and helper functions based on simple mechanics

Also, Goals will now be organized in object-oriented fashion.

git-svn-id: http://svn.code.sf.net/p/vcmi/code/trunk/@3590 4dfc6b2a-8b31-0410-aa91-d6c70e3ac834