Using Guava InetAddresses to check IPv4/6 validity

This closes #40. I had to pull Guava as a compile dependencies as Java doesn't offer any IP validation without lookup out of the box and I think using an existing solution is better than writing our own validator - but I'll leave it up to you if pulling Guava in for this is an overkill.