We show how the classical notions of cohomology with local coefficients, CW-complex, covering space, homeomorphism equivalence, simple homotopy equivalence, tubular neighbourhood, and spinning can be encoded on a computer and used to calculate ambient isotopy invariants of continuous embeddings N↪M of one topological manifold into another. More specifically, we describe an algorithm for computing the homology Hn(X,A) and cohomology Hn(X,A) of a finite connected CW-complex X with local coefficients in a Zπ1X-module A when A is finitely generated over Z. It can be used, in particular, to compute the integral cohomology Hn(X˜H,Z) and induced homomorphism Hn(X,Z)→Hn(X˜H,Z) for the covering map p:X˜H→X associated to a finite index subgroup H<π1X, as well as the corresponding homology homomorphism. We illustrate an open-source implementation of the algorithm by using it to show that: (i) the degree 2 homology group H2(X˜H,Z) distinguishes between the homotopy types of the complements X⊂R4 of the spun Hopf link and Satoh's tube map of the welded Hopf link (these two complements having isomorphic fundamental groups and integral homology); (ii) the degree 1 homology homomorphism H1(p−1(B),Z)→H1(X˜H,Z) distinguishes between the homeomorphism types of the complements X⊂R3 of the granny knot and the reef knot, where B⊂X is the knot boundary (these two complements again having isomorphic fundamental groups and integral homology). Our open source implementation allows the user to experiment with further examples of knots, knotted surfaces, and other embeddings of spaces. We conclude the paper with an explanation of how the cohomology algorithm also provides an approach to computing the set [W,X]ϕ of based homotopy classes of maps f:W→X of finite CW-complexes over a fixed group homomorphism π1f=ϕ in the case where dimW=n, π1X is finite and πiX=0 for 2≤i≤n−1.