Had to refactor things to support both source and package install