Use jsonpath library to walk dict hierarchy.

- Benefit of using this library is that some more key options open up.
- Subtle fix in the return of jsutil to improve rendering of dict values.

* Without -k
```
$ st2 execution get 54822ea10640fd1b449fc5e7
STATUS: succeeded
RESULT:
{
    "localhost": {
        "failed": false,
        "stderr": "",
        "return_code": 0,
        "succeeded": true,
        "stdout": "PING google.com (74.125.239.136) 56(84) bytes of data.
64 bytes from nuq05s02-in-f8.1e100.net (74.125.239.136): icmp_seq=1 ttl=63 time=6.47 ms
64 bytes from nuq05s02-in-f8.1e100.net (74.125.239.136): icmp_seq=2 ttl=63 time=80.2 ms
64 bytes from nuq05s02-in-f8.1e100.net (74.125.239.136): icmp_seq=3 ttl=63 time=7.08 ms
64 bytes from nuq05s02-in-f8.1e100.net (74.125.239.136): icmp_seq=4 ttl=63 time=6.25 ms
64 bytes from nuq05s02-in-f8.1e100.net (74.125.239.136): icmp_seq=5 ttl=63 time=6.39 ms
64 bytes from nuq05s02-in-f8.1e100.net (74.125.239.136): icmp_seq=6 ttl=63 time=9.17 ms
64 bytes from nuq05s02-in-f8.1e100.net (74.125.239.136): icmp_seq=7 ttl=63 time=6.99 ms
64 bytes from nuq05s02-in-f8.1e100.net (74.125.239.136): icmp_seq=8 ttl=63 time=11.5 ms
64 bytes from nuq05s02-in-f8.1e100.net (74.125.239.136): icmp_seq=9 ttl=63 time=7.41 ms
64 bytes from nuq05s02-in-f8.1e100.net (74.125.239.136): icmp_seq=10 ttl=63 time=8.08 ms

--- google.com ping statistics ---
10 packets transmitted, 10 received, 0% packet loss, time 9016ms
rtt min/avg/max/mdev = 6.254/14.971/80.280/21.823 ms"
    }
}
```

* with -k and dict value
```
$ st2 execution get 54822ea10640fd1b449fc5e7 -k localhost
{
    "failed": false,
    "stderr": "",
    "return_code": 0,
    "succeeded": true,
    "stdout": "PING google.com (74.125.239.136) 56(84) bytes of data.
64 bytes from nuq05s02-in-f8.1e100.net (74.125.239.136): icmp_seq=1 ttl=63 time=6.47 ms
64 bytes from nuq05s02-in-f8.1e100.net (74.125.239.136): icmp_seq=2 ttl=63 time=80.2 ms
64 bytes from nuq05s02-in-f8.1e100.net (74.125.239.136): icmp_seq=3 ttl=63 time=7.08 ms
64 bytes from nuq05s02-in-f8.1e100.net (74.125.239.136): icmp_seq=4 ttl=63 time=6.25 ms
64 bytes from nuq05s02-in-f8.1e100.net (74.125.239.136): icmp_seq=5 ttl=63 time=6.39 ms
64 bytes from nuq05s02-in-f8.1e100.net (74.125.239.136): icmp_seq=6 ttl=63 time=9.17 ms
64 bytes from nuq05s02-in-f8.1e100.net (74.125.239.136): icmp_seq=7 ttl=63 time=6.99 ms
64 bytes from nuq05s02-in-f8.1e100.net (74.125.239.136): icmp_seq=8 ttl=63 time=11.5 ms
64 bytes from nuq05s02-in-f8.1e100.net (74.125.239.136): icmp_seq=9 ttl=63 time=7.41 ms
64 bytes from nuq05s02-in-f8.1e100.net (74.125.239.136): icmp_seq=10 ttl=63 time=8.08 ms

--- google.com ping statistics ---
10 packets transmitted, 10 received, 0% packet loss, time 9016ms
rtt min/avg/max/mdev = 6.254/14.971/80.280/21.823 ms"
}
```

* with -k and string value
```
$ st2 execution get 54822ea10640fd1b449fc5e7 -k localhost.stdout
PING google.com (74.125.239.136) 56(84) bytes of data.
64 bytes from nuq05s02-in-f8.1e100.net (74.125.239.136): icmp_seq=1 ttl=63 time=6.47 ms
64 bytes from nuq05s02-in-f8.1e100.net (74.125.239.136): icmp_seq=2 ttl=63 time=80.2 ms
64 bytes from nuq05s02-in-f8.1e100.net (74.125.239.136): icmp_seq=3 ttl=63 time=7.08 ms
64 bytes from nuq05s02-in-f8.1e100.net (74.125.239.136): icmp_seq=4 ttl=63 time=6.25 ms
64 bytes from nuq05s02-in-f8.1e100.net (74.125.239.136): icmp_seq=5 ttl=63 time=6.39 ms
64 bytes from nuq05s02-in-f8.1e100.net (74.125.239.136): icmp_seq=6 ttl=63 time=9.17 ms
64 bytes from nuq05s02-in-f8.1e100.net (74.125.239.136): icmp_seq=7 ttl=63 time=6.99 ms
64 bytes from nuq05s02-in-f8.1e100.net (74.125.239.136): icmp_seq=8 ttl=63 time=11.5 ms
64 bytes from nuq05s02-in-f8.1e100.net (74.125.239.136): icmp_seq=9 ttl=63 time=7.41 ms
64 bytes from nuq05s02-in-f8.1e100.net (74.125.239.136): icmp_seq=10 ttl=63 time=8.08 ms

--- google.com ping statistics ---
10 packets transmitted, 10 received, 0% packet loss, time 9016ms
rtt min/avg/max/mdev = 6.254/14.971/80.280/21.823 ms
```