Add lifetime and expiry to Bullet

Also refactor render()