Flatten module hierarchy through re-exports

Can we make the module hierarchy more flat via re-exports? Imports are quite tedious already.

Should get :noindex: for the re-exported modules for sphinx to avoid WARNING: more than one target found for cross-reference.

Suggestion

  • finam
    • From core.interfaces
      • FinamLogError, ... (all errors)
      • ComponentStatus
      • Loggable
      • NoBranchAdapter
      • (all the interfaces like IComponent are normally not required by devs, so should stay in core.interfaces)
    • From core.sdk (everything except IOList and IOType)
      • AAdapter
      • AComponent
      • ATimeComponent
      • Input
      • CallbackInput
      • Output
    • From core.schedule
      • Composition
    • From data and sub-modules
      • FinamDataError
      • Info
      • CellType
      • Location
      • NoGrid
      • UniformGrid and all other non-abstract grids
      • Not sure about functions like to_xarray, get_data, etc. Maybe have them under finam.data?
  • finam.data
    • canonical_data()
    • all the functions from finam.data.tools?
Edited by Martin Lange