many changes:

many deciding functions "finished"