struitl: Add helper functions: string to number.

This patch adds helper functions for converting a string to different number
formats (double, long, float, int).

This functions are exposed in the public API.
scpi: Add helper functions for SCPI communication.

The Standard Commands for Programmable Instruments (SCPI) defines a standard
for syntax and commands to use in controlling programmable test and measurement
devices.

SCPI documentation:
	http://www.ivifoundation.org/docs/scpi-99.pdf

This patch adds helper functions for sending SCPI commands, reading a SCPI
response and reading and parsing a SCPI "*IDN?" response.
scpi: Add function to strictly parse bool strings.

This patch adds a function that is similar to sr_parse_boolstring but its
matching rules are more strict.
scpi: Add more functions (getting int/bool/float/double).

This patch adds helper functions to read an SCPI response and parse the response
as an integer, boolean, floating-point or double-precision floating-point number.
scpi: Add a function to read and wait on a *OPC? reply.

The SCPI standard specifies the "*OPC?" command (Operation complete query) which
queries the instrument for its operative state. When all pending operations are
complete, the instrument responds with a "1".

Some manufacturers block before completing all operations and don't respond
with anything and some of them respond with a "0". This function handles both
cases uniformly.
scpi: Add function to get an array of floats.

This patch adds a function to read and parse a SCPI response which contains a
comma-separated list of floating-point numbers (e.g. "1.0e-5,2.0e-4,3.0e-3").

This is particularly useful if the instrument sends analog measurement
data in this format.
scpi: Add function to fetch uint8_t.

This patch adds a function to read and parse a SCPI response which contains a
comma separated list of unsignet 8-bit integer numbers (e.g "1,0,64").

This is particularly useful if the instrument sends digital measurement data
in this format.