TaskManager now connected to database

AStyle submodule added
Prebuild event to format code
Configurations read from config.ini
update toolkit
class Task to hold a task item
Updated db sql
MD5 type changed: binary->varchar
Changed astyle options

indent-spaces=2
max-code-length=80
Enable code analysis for debug build
Fix type mismatch in printf
Client uses gbk

This charset settings only affects
1. client/connection (for queries)
2. result (for data fetched in columns)
Data stored on server still use charset specified when tables are
created/modified. Currently, utf8 is used.
TaskTodo.MD5 should be varchar as in TaskDone
Get tasks from TaskTodo
FrontendDeviceMap changed

- Primary key changed to composition of 3 columns
- idIcon no longer a foreign key

FrontendIcon dropped
Empty Communicator class
Alter db types

Status can be null
Strings have default value of ''
TaskDone has TimeFinished column
Use #define guard instead of #pragma once
No code analysis on build
database connector functions returns 0 for success
New configuration: database.task_fetch_interval
Periodically fetch tasks now.
Use stdafx.h