refactor intset

use abstract class for intset
add module that creates best class
cosmetics