More cleanup
Implement 'JSON Patch' replace operation support
Improve API support
Implement a super ugly patch application function instead of lens-only solution.

This gives us better diagnostic information for error reporting in the event that there's a failure somewhere along the way.
Don't use deprecated cabal option
Improved parsing diagnostics
Refactor all the things