Fix insufficiently general type signatures
Tidy up some comments
Run test suite on all available cores by default
Merge