Fix #297 - Permit 0 as a port number for Memcache

Fix for #297 
I deliberately kept the scope to just allowing port zero, rather than adding in validation, but if you do want to validate things then is_numeric allows through a lot of things that you probably don't want (e.g. "-1", "+0123.45e6", "0xf4c3b00c", "0b10100111001").  If you do want to start validating things, then you should use ctype_digit and possibly throw a different Exception to distinguish invalid values from missing ones.