switch to composer for dependency management