release bullets when they are out of visible area.

and change bulletList to bulletsList. I know this behavior is bad.... I
should separate these two commit...