Implemented base traits (stage 1 of #7)

Closes #10