Compare functionality (not completed)
Merge branch 'master' into compare