Initial commit, add the base library