WIP: Add methods to dump and load snapshots.

- Change how a RaftListener is notified of committed commands.
- Add types and methods to libraft-core to dump/load snapshots.
- libraft now requires Java 1.7+ to compile