Adjusted architecture andgave more coherent names to packages