Update xmlrpc.py to add vrf argument to find_free_prefix

Fixes find_free_prefix XMLRPC, VRF was not being passed through
Merge pull request #374 from tmenari/patch-1

Update xmlrpc.py to add vrf argument to find_free_prefix
Implement growing and shrinking pools

.. using 2 methods

Using 2 methods we know beforehand if the user wants to remove a prefix
from a pool, and incase he/she wants completion, *he can opt for not specifying a range.
Commit plajjan's gist

https://gist.github.com/plajjan/91c310603c4339e2879e
Whitespace: Add some empty lines above methods
Use global pool variable in resize methods
remove example code
Use correct variable in error message

Part of #146
Fix bug in helper-nipap

This makes helper-nipap a bit more tolerant to errors in that it will
find the first argument called 'nipap' and continue processing all
arguments after that first argument. This means that helper-nipap can be
called like "helper-nipap nipap address" or "helper-nipap address" and
it will still produce the same output.

Fixes #375.
Fix tab completion for pool resize remove

Removed some testing code which was there to find an issue with bash's
character escaping.
Add a very small test for the CLI

This adds a super small test suite for the CLI. Essentially to verify my
fix for #373 but we can build upon it later to test more stuff.

Part of #373
Activate new test suite in Travis-CI config

Part of #373.
Rename order to order_id

This was missed when we renamed order - we simply forgot to update the
CLI! Thanks to dosomder for pointing this out!

Fixes #373.
Improve tab completion offset stuff

This improves the robustness of helper-nipap when it is trying to find
the correct offset to start parsing arguments at.

Part of #375.
Update NEWS file and version to 0.21
Update changelogs for v0.21.0