cache Definition objects
tests for support for symbol browsing with imports and 'defined_names', see #344
use defined_names also for modules, fixes symbol browsing issues - fixes #344