Fix spur removal

This pull request adds a new spur removal algorithm which iteratively removes kmers that have no predecessor/successor and that are not the source or sink of the graph. Additionally, we add test code for this feature, and make running spur removal the default choice during assembly.