arguments that are defined in include files get properly parsed as well, plain objects are converted into typed objects where possible