Should we just give elgg_format_element this signature? The other options could be stuffed in attributes or in a 4th arg.