tracks reasons for _not_executed

Covers #119. 

Also noticed the module doc string, among others, are not up to numpy doc spec. Not an issue to block this PR on that if necessary