Fix get interface

This patch piggybacks on #133 and provides a better interface to create... interfaces.

Please review and merge #133 first, presuming it passes muster.
I'm a little bit confused by this function, both by the fact that the `prefix` parameter is really only meaningful when `create == true`, and by the fact that it can actually create an interface when `create == false`. Maybe we need:
- `generateInterfaceName(prefix string)` which generates a free and valid name for an interface
- `createInterface(linkParams netlink.Link)`
- A code that does the job of generating a new name if `force == true` and the provided name is already taken, and always ends up calling `createInterface(linkParams)` either with the provided name or the generated one.

Does that make sense?