Reconstruction

Source code has been recostructed, files have been moved to folders for
better organization.