admin: fail commands when user supplies an option that is unknown

The current behaviour for both annotated and ac_ commands is that
any options that are unknown to the command are simply ignored.

This behaviour can be dangerous; for example, the migration
module's move and copy commands accept a 'pnfsid' option to
limit the scope of the operation.  Multiple PNFS-IDs may be
specified as a comma-separated list; however, this leads to
the potential for invoking a move with the option:

     -pnfsids=<id1>,<id2>,...

The migration module will silently ignore the unknown 'pnfsids'
option and move or copy all files on the pool.

More generally, if there is an unknown option then the user is
intending some behaviour that the command will not honour:
irrespective of how dangerous this is, it can be frustrating
to diagnose why an apparently correct invocation isn't doing
what is intended.

This patch fixes this problem for annotated commands only.
This is sufficient to fix the specific issue mentioned in the
ticket.  Solving this for non-annotated commands might be
possible, but I believe only with considerable effort.  Such
effort would be better spent moving those commands to use the
new annotation-based command format.

Target: trunk
Request: 2.7
Request: 2.6
Ticket: http://rt.dcache.org/Ticket/Display.html?id=7991
Patch: http://rb.dcache.org/r/5957/
Acked-by: Albert Rossi
Merge pull request #180 from paulmillar/fix/2.7/fail-cmds-with-bad-options

Fix/2.7/fail cmds with bad options