Split app name and version in Capabilities.

To enhance capability matching and to select the latest version of the app to test if the
app version is not provided by the users. This enhancement still retains the backward 
compatibility when users specified an AUT as "appName:appVersion".

Signed-off-by: Binh Vu <bvu@paypal.com>
Should this method always check if the `defaultApp` is available in the `keys`? It now implicitly does when we try to search for the latest version. I think it would make sense to do it for the `defaultApp` without `:` as well.

If you agree can you add that behavior, add a test and update the doc block? (e.g. `Returns null if the application is not supported`)