Custom validators for methods

I want to keep current normalize system, @twoRoger wants a stricter system (#79). 
Let's think about validator mechanism in the library.

Default validation mode is `normalize` (current way to preprocess parameters). We can add an extra one — `strict`, for instance. Also a developer has a chance to declare just a custom function for this issue.

This option should be declared to each API method.

Opinions? Cons/pros?
Hmm, `setOption()` is deprecated. Let's undeprecate it?