operations: rewrite noise-pick.c

- don't try to allocate a too large array
- make it a proper GeglOperationAreaFilter,
  the previous implementation was not seamless
- some performances improvement
- prettify the implementation