Command determines ARGV correctly when ARGV empty

Usually if you call `rake appraisal` from a project configured to use Appraisal, then everything works -- Appraisal calls `rake` for each of your gemfiles.

However, if you've configured `rake` to run `rake appraisal` automatically, when you call `rake` then Appraisal::Command throws an error. This is because it assumes that "appraisal" will be first in ARGV, which is the case when you call `rake appraisal` manually but not the case here. Therefore when it tries to figure out which command to run it blows up (as ARGV[1..-1] returns nil if ARGV is empty). This commit fixes that.

NOTE: I'm not sure how to test this? Is there a way?