for review

we should consider
1 define the external resource
2 how to ship to executor
3 a pool for this resource in exetutor
So ExtResource should be a trait or abstract class
```
trait ExtResource(val name: String)[T] {
def init
def stop
def getResource: T
}

```