making things good, lot of tests broken however, will be allright