Both my PR and @puzza007's

Closes #12.