moving AbstractHandler up one level