fix extending; add linking; fix tests;