[READY] Better flexibility for abstract db types

Feature was requested in yiisoft/yii#765

Behavior will be as follows:

`string` will become `varchar(255)`
`string(32)` will become `varchar(32)`
`text(255)` will become `text` (because mysql does not support limit for text)

For this to work default column definition always has to be explicit about limits even if it is possible to define it without it like mysql `decimal` which is `decimal(10,0)` by default.

Does not affect complex column type definitions.

Todo:
- [x] tests for mysql
- [x] tests for sqlite (http://www.sqlite.org/datatype3.html)
- [ ] ...( tests for mssql )
- [x] adjust documentation