Support completion of positional "rest" (slice/array) args

Given a command with a positional "rest" arg (`Filename []Filename`
here):

	AddMultiCommand struct {
		Positional struct {
			Filename []Filename
		} `positional-args:"yes"`
	} `command:"add-multi"`

This PR implements completion for the rest arg using the element
type of the "rest" arg value (here, `Filename`).

Adds the test AddMultiCommand to TestCompletion to test the new
behavior.

Adds a sentence describing this new behavior in the flags.go package
documentation (previously, the docs did not clearly define whether
this behavior was present).
Move typ outside of the if-block
Use (*Arg).isRemaining() to check whether arg is positional remaining
force gofmt's format to build successfully
add some linters
race detection is not needed

we will "never" have go routines in the package
only run goveralls if secure variables are available
fix path for govet
Merge pull request #101 from zimmski/improve-travis-configuration

Improve travis configuration
make the linter happy
Merge pull request #102 from zimmski/happy-linting

make the linter happy (except commenting in examples)
Factor out completeArg

This factors a new function, completeArg which completes
a positional argument correctly depending on whether it
is a positional argument for remaining args.
Merge branch 'complete-positional-rest-args'