Basically takes advantage of the configuration struct. The tests still fail and I still don't know why.