libutils, kernel: add standard functions needed by OpenSSL

Prepare for building OpenSSL libcrypto.
1. Add the following to libutils:
- isdigit(), isspace(), isalpha(), isalnum(), isxdigit(), isupper(),
  islower(), toupper(), tolower(): basic ASCII-only implementation
- atoi(), sscanf() (stub!), strtoul(), strncmp(), strcpy(), strncpy(),
  strchr(), strcat()
2. Add abort() and time() to core/kernel.

Signed-off-by: Jerome Forissier <jerome.forissier@linaro.org>
mk/core.mk: remove unused -DTEE_CORE

Signed-off-by: Jerome Forissier <jerome.forissier@linaro.org>
unistd.h: define ssize_t as intptr_t

Will help when going 64-bit.

Signed-off-by: Jerome Forissier <jerome.forissier@linaro.org>
time.h: make time_t 64-bit

Signed-off-by: Jerome Forissier <jerome.forissier@linaro.org>
Add support for $(lib-use-ld) and $(lib-ldflags)

When building a static library, set lib-use-ld := y to use $(LD) instead of
$(AR). Link flags may be passed in $(lib-ldflags).

Signed-off-by: Jerome Forissier <jerome.forissier@linaro.org>
Add support for $(cflags-lib-y)

Signed-off-by: Jerome Forissier <jerome.forissier@linaro.org>
Implement OpenSSL crypto provider (WITH_CRYPTO=openssl)

Set the WITH_CRYPTO build option to 'openssl' to use the OpenSSL libcrypto
library for cryptographic services. When WITH_CRYPTO is not set, or set to
'tomcrypt', LibTomCrypt is used.

Usage example:
  $ make CROSS_COMPILE=arm-linux-gnueabihf- \
         PLATFORM=vexpress PLATFORM_FLAVOR=fvp \
         WITH_CRYPTO=openssl

Tested with xtest (e7cda93) on Foundation_v8 (PLATFORM_FLAVOR=fvp) and QEMU
(PLATFORM_FLAVOR=qemu_virt).

Signed-off-by: Jerome Forissier <jerome.forissier@linaro.org>
Travis: add build command with OpenSSL crypto enabled

Signed-off-by: Jerome Forissier <jerome.forissier@linaro.org>