Add 'remote' argument to heroku

Also add the shorter -a switch to the app argument
Add remote argument completions

This was copied from _git-flow
Overhauled port command completion

Port command completion got smarter. It can now complete paths for the
provides subcommand, and complete pseudo-portnames.

It will complete all ports or only installed ones (for example, when
completing for the uninstall command).

It will complete the select subcommand with appropriate values.
Moved port_select function to bottom
Use native caching system
Use own cache policy

This checks modification dates of the repository database and completion cache
and refreshes the latter if it is older than the database.
Add completion for knife user commands

These commands were added in Chef 11.0.0.
Use message instead of guard

Use _message instead of _guard when completing the search pattern.
_port: add upgrade completions

Port upgrade completes only outdated ports.
Remove unnecessary parenthesis escaping
Set cache-policy before calling _arguments
Do not use state mechanism

Call a dispatch function instead, simplifying the nested select case.
Fix bug introduced in 3e6040e01

I can't call a function from _arguments
Add completion for rev-upgrade subcommand
_id3: initial commit
_id3v2: initial commit
_id3: small update in descriptions and logic

use present tense. also, complete at least one option before filenames,
calling id3 with just file arguments is not a valid operation.
_id3v2: complete at least one option before filenames
Add svm(Scala Version Manager) completion.
Merge pull request #130 from g5pw/master

Overhauled port command completion