add basic DSA functions

Kickstart DSA API discussion refs #230