Updated ignore and attribute files
Added resource file
Dictionary implementation to use interfaces

Instead of using an object reference for the dictionary implementation,
use an interface.

This removes the need for the lifetime manager, and also allows to
switch implementation at runtime.