major updates; still need to finish multi layer network
new constructor for layers
new layor factory creation method to ensure the proper layer factory is used