use new Em.Map function signatures

still have two failing tests, and this will also break the stable builds...
Looks like every fashion trend is coming back, this time it's C89 :P