added io functionality and psuedo buildscript