Only the routes should be cached, everything else is included dynamically

Additional improvement:

* Only deserialize routes when we actually load the serialized ones (and not previously already have the original array)