move major functions to auload whenever possible