ANN: Setfield.jl Yet another package for working with immutables

A good example that you might want to change is the whole family of problem struct in DifferentialEquations.jl:
http://docs.juliadiffeq.org/latest/types/ode_types.html

You may want to change the initial condition u0 type from Vector to Matrix, or regular array to static array or GPU array, etc. This is going to change the type parameters of the problem type.