refs #2, #3. spec for generic is done.