Change goal failure behavior
- If goal succeeded keep updating its children
- If action failed don't fail its satisfying goal
- Goal fail if all children finished executing and goal is not still not prepared yet
- Introduce the concept of Done node which means a node needs no further processing, it should be bypassed in plan graph update

Signed-off-by: MHesham <mhesham.fcis@gmail.com>