Different value types and optional property sections in Thing DSL

Signed-off-by: Alex Tugarev <telekom@tugarev.de>