Set state after Stop().

Update the state to "Stopped" after Server.Stop() is called.
Merge pull request #199 from benbjohnson/fix-stop-state

Set state after Stop().
feat(server): add FlushCommitIndex
chore: add interface for FlushCommitIndex
Merge pull request #201 from unihorn/44

feat(server): add FlushCommitIndex
feat(server.go) introduce server.Init()
This commit enable dividing raft server starting process to two phases. So application can do extra work based on the status of the raft server before starting it. To implement this, we add a initialization phase, in which raft server reads in the log entires from data-dir and commits to the last recorded index.
Merge pull request #198 from xiangli-cmu/init

feat(server.go) introduce server.Init()
fix(server.Init) Fix wrong error reporting
We should only report error if the snapshot path is not exist and we cannot create a new one.
Merge pull request #203 from xiangli-cmu/init

fix(server.Init) Fix wrong error reporting
fix(server.Init) fix snapshot mkdir error handling
We should report all errors other than existErr.
Merge pull request #204 from xiangli-cmu/init

fix(server.Init) fix snapshot mkdir error handling