[fix] Uses shared pointers instead of explicitely shared objects

Shared pointers at least reflect the syntax of a pointer,
so Node and CacheEntry are now migrated to QSharedPointer,
instead of the old and dirty explicitely shared objects.

There is also a quick fix for one test included.