Add SurfnetStepupBundle.
Add license header to StepupBundle.
Implement JsonConvertibleParamConverter.
Convert API controllers to use JsonConvertibleParamConverter.
Replace reflection with instanceof check on instance.
Replace manual ConstraintViolations with simple error strings.
Change BadRequestException from DomainException to RuntimeException.
Abort early when parameter is completely missing.
Rename BadRequestException to BadJsonRequestException.
Adjust ParamConv#supports() so PHP-Parser doesn't trip.

Adjust ParamConv#supports() so PHP-Parser doesn't trip during
extraction of translations.
Verify various DTO properties are strings.
Send DTOs directly to API services.

Don't wrap in superfluous commands.
Enable Mockery PHPUnit test listener.
Throw BadJsonRequestException when string errors > 0.
Move violation string mapping into BadJsonRequestException.
Test JsonConvertibleParamConverter.
BadJsonRequestException previous exception may be null.
Remove code and exception from BadJsonRequestException factory method.
Give BadJsonRequestException default message.
Remove explicit BadJsonRequestException messages.