``What shadows we are, and what shadows we pursue.''
-- Edmund Burke, Speech. (1780)
The main thrust of this thesis is to extend a previously published numerical shadowing refinement procedure to make it more efficient, thus allowing larger and more realistic systems to be shadowed. The astrophysical N-body problem is used as an example, although the refinement procedure could just as easily be used on any chaotic system. With various numerical tricks and physical insights, our algorithm runs, depending on the problem, between 5 and 100 times faster than the original algorithm.