rearranged the file structures, and also renaming object struct to particle