REF: Refactor the linear operator implementations
Because talon will provide many linear implementations, the current organisation will quickly become difficult to follow.
This commit refactors the linear operator implementations to have each specific implementation in its own file. This is the first step towards the addition of a GPU implementation (#29 (closed)).
This refactor should have no impact on user code that relies on talon.operator
to create operators, as recommended.