public void Remove <T>(object identifier)
            where T : class, new()
        {
            Validate
            .Begin()
            .ParameterIsNotNull(identifier, "identifier")
            .Check();

            var item = LocalStore.GetSingle <T>(identifier);
            var pi   = TypeIdentifierRegistrations[typeof(T)];

            m_settings.LocalStore.Remove <T>(pi, identifier);
            QueueForDelete(item);
        }