change spray collection constructor and add count support