added in bulk selection logic (with tests and docs)