Add cabal files and basic framework