saved some bytes
@see for per()
#31 - compatibility with ES-Shim
Many other smaller changes.