SingleView: render uses form fields to display and properly format values

this has required to patche wftform.Field to add method 'render_view' and attribute 'view_widget':
support custom rendering, per field, for 'view' mode of an object form

By default view_widget is set to 'edit' widget
'View' rendering is done from widget provided it has method 'render_view', else object_value is simply converted to unicode
use namedtuple for data in rows: allow templates to select by name instead of
just iterating on a list
added data- for form prefix and field short_name, to help JS create dynamic names
widget view mode: if label comes from field, don't use form rendered version with 'label' tag, just text
labels are now place in a namedtuple, to ease work in custom view templates
tabularfieldlistwidget: accept a template path as init parameter
field macro: proper markup generation for labels (previously resulted in 2
imbricated label tags)
display label only if present, avoid generating blank lines
field/widget render_view: allow kwargs
added method 'render_entity_view', for easier customization by subclasses
fix widgets render_view if no data
Merge branch 'form_render_view'