improve test coverage; curry prepend and append

as i see it, an 'atom' is something i can do something with. `undefined` is nothing there; `null` is the absence of an object; `NaN` is just f'ed up. But i'm open to discussion on this. 

(i though the real showstopper was that `append` and `prepend` were uncurried. oops!)