also compile tests
#4 removed unnecessary prob type coercion, forward is now 33% faster