cleanup & needs a better folder structure