Refactor combine related files into one file

Go-raft used to have different files for different structures. This pull request combines related files, since there are too many files in the root package.