Merge wikidiff in "working" state into dev branch (more work to follow)

@funkyeah
@swstack

This branch seems to be basically working and is basically what swmuron worked on but merged and refactored slightly in order to integrate with the latest stuff on the dev branch.  Further work here makes sense, as discussed.  An initial merge with my dev branch (pull request already open) has been performed to ensure the merge goes smoothly.