@ben657 As far as i know SystemJS is always lazy loading. But things like "import XYZ from 'abc'" will be added as a dependency and loaded immediately, because it will be needed for your currently loaded part (loaded lazy or not). If you want lazy loading you have to manually import with System.import() once some not yet needed/imported functionality is needed. But regarding ES6: Only the import statements are in the final spec. System.import() and alike are not yet part of the spec.
@natetyler It seems like when using jquery with system.js, import * as $ from 'jquery' returns a different instance of $ than referencing window.$ - Does anyone know the solution for that? some libraries properly get a handle on $ by using require, others just operate directly on window.$