added base code, basic documentation