- partition deck using Scala primitives, which removes Guava dependency
- DeckFactory will allow mocks for better testing