Added Header files and other functionality