Simplify parameter validation and deprecation

This PR simplifies the parameter validator class. This class was causing a few issues when generating the warning message for complex objects.

Me and @fixe have taken the opportunity to clean up the entire class and normalize the `deprecated` parameter.

One upside is that the `circular-json` dependency is no longer needed.