Reorganize strategy classes

Signed-off-by: mgolab <mgolab91@o2.pl>
Rewrite tests

Signed-off-by: mgolab <mgolab91@o2.pl>