Added strnlen function to all platforms.
Added strnlen function to all platforms.

strnlen is used to find the length of a C string that may be
lacking a terminal NUL character. Whilst it is possible to
implement the equivalent functionality in rust code, it is
cleaner, simpler and removes the need for duplication of tricky
functionality to get right. It also makes it easier to port
C code snippets to rust.

Note that strnlen is not part of POSIX or C99.

rust-lang-nursery/libc,zethra/libc,philippkeller/libc,anatol/libc,zethra/libc,rust-lang-nursery/libc,cactorium/libc,cactorium/libc,superriva/libc,zethra/libc,anatol/libc,mneumann/libc,mneumann/libc,cactorium/libc,philippkeller/libc,superriva/libc,philippkeller/libc,rust-lang/libc,superriva/libc,anatol/libc,mneumann/libc,rust-lang/libc,rust-lang-nursery/libc,rust-lang/libc