added sigmoid layer, and refactored copy_input functionality out of Linear._linear_part().