Rearange project structure and improved rewriters classes