initial commit (many still need work but are included for completeness)