Added new fuctions to access vendor specified eeprom area

Signed-off-by: thomas.ruschival <thomas@ruschival.de>
Fixed Memory leak in tcv_init / add tcv_destroy

Memory leaks if read operation fails (quite common for i2c!)
No tcv_destroy function existed

Signed-off-by: Thomas Ruschival <thomas@ruschival.de>
Basic test was commented out
Merge branch 'tcv_destroy'
Fix memory-bug detected by address-sanitizer

Enabled compilation with address-sanitizer,
fixed 1 bug it detected.
Threadsafe tcv_t - interface cleanup

Implemented locking for thread safe tcv_t
creation and initialization of tcv_t split.

Public funcitons in tcv.h use pthread_mutex to protect tcv_t
from data-race on tcv_t.data and tcv_t.functions

libtcv/tcv.h contains public client functions, all internal functions
and data types are hidden in tcv_internal.h

Fixed typos, implemented some more tests.

Signed-off-by: Thomas Ruschival <thomas@ruschival.de>
Fixed profiling/coverage options in cmake
Merge branch 'thread_safe_tcv_t' of https://github.com/truschival/libtcv into truschival-thread_safe_tcv_t

Conflicts:
	include/libtcv/tcv.h
Merge branch 'truschival-thread_safe_tcv_t'