Allow creation of new validators on the fly

This is useful for extensions and/or behaviors.
I could do it outside the model, but I think it belongs in it.
Update changelog
now return $this allowing method chaining

also added @since tag
fixed log order
new line after method

just to keep the standard
Added test for CModel::addValidator method
Better test for CModel::addValidator
CActiveRecord has been refactored: meta data objects are now stored at the static field.
Note about overriding "CActiveRecord::__construct()" has been added.
Extra "CActiveRecordMetaData::$_model" field has been removed.
Code indenting at "CActiveRecordMetaData" has been fixed.
Field "CActiveRecordMetaData::$_modelClassName" has been added to track active record class and compose verbose exception messages.
Removed extra spaces
Merge pull request #2269 from klimov-paul/2251-refactor-active-record-meta-data-static

Refactor active record meta data to be static field
Enh #1928: Gii is now able to use table columns' comments as the attribute labels of a new generated model.
ja docs and messages updated
Merge pull request #2279 from softark/docs-ja

ja docs and messages updated
Enhancements to the #2277.

1. Change log line fixed.
2. Attribute names fallback mode: column comments are preferred over column names.
3. Related view altered.
Checkbox state checking forgotten.
Rewrote component property description in the guide