started with 2.4.0 branch
major refactor: filter reimpl
add filterNot
remove has / hasNot -> use filter / filterNot instead!
add filterPF and filterNotPF that take partial functions
rename map to propertyMap (name map collides with term from monad)
show how filter edges works
propertyMap: use Scala types, add test
add toScalaList
replace transform with map: better name for what it does; also remove
nulls on property, replace with option (idiomatic scala)
Merge branch '2.4.0-changes'