The Home Office overpaid for a former prison it wanted to house asylum seekers in and cut corners in the process, a report has revealed.