huge commit of first real version.