utils: make Spawn.hpp public

GVLE needs to use the Spawn module. We move the Spawn.hpp file from
details into public API.
utils: enhance Spawn::isfinish

We need to ensure that the is_running function is call one time at
least. So, we fix the Spawn::isfinish function.
gvle: add a SpawnPool member to the GVLE class

- In order to manage many spawns used at the same time, a spawn
  container is added to the GVLE main GUI class. This container
  automatically erase spawns when they are not any more used.
- The OpenFile feature of the file Tree View widget has been updated in
  order to use the spawn system of VLE.