added default entry point and executable boilerplate