Tasks api

Uses metaclass to enforce special dict behavior.