Refractor the whole project

Move some files