Dataset component

Dataset component complete; merge back into Master.