Initial commit

Porting all the code from Qiita and extending the tests.
for numpydoc, shouldn't these be prefixed with `>>>`?