use an array instead of a list for global symbol list

- significantly speeds up library creation

- slist_reset is still extremely expensive