Make plugin cache directories be named after the plugin ID

Previously they were named accidentally, after the git repo's or local
directory's basename.
Adding subdirectory support to fetch.
First pass at dependency support.
Fix tests after adding dependencies.
added specs for fetch and clonePluginGitRepo w.r.t. subdirectory support
Add spec for <dependency> tag to README.md.
Fix source and destination paths for installing plugins from local disk

They were installing into eg. my.plugin.id/plugman_dir_basename/*
instead of just my.plugin.id/*.
giant refactor for dependencies, part one: changing the way install works.
Add git ref support to fetch. Not used anywhere yet.
slight workaround to avoid duplication operations during ios installs
differentiating between top-level and dependent plugins. uninstall should work for the single plugin case (still need to fire off dependent plugin danglin uninstalls).
uninstallation with dependents should now work.
updated/fixed install + uninstall specs. added specs to both for plugins with dependencies
tweaks for prepare specs
axed old remove modules, fixed up android handler specs.
fixed blackberry specs
tests fixed! woot.
added tests for action-stack
added dependency module tests.
version 0.7.0 after landing dependencies