rearrange code to be mode cleaner
comit movement changes
remove ui files
Most compilation errors are fixed
Move bunch of features for snapshotting into snapshot state class