Implement iterator protocol, abstract out RowFormatter

Exporters now take the iterable in __init__ which enables
iterator over formatted rows prior (instead of writing the
data to a file object).
Update R exporter for new API and break out data/script methods

Add reference to concepts directly on Exporter instance