Restructuring, added headers, conjoined inputs and fieldsets

Signed-off-by: Sam Hellawell <sshellawell@gmail.com>