added package installer function