upstream 1.5.6, implement python packaging best practices