Re-structure project for better organisation and namespaces.