Notes on Landauer's Principle, Reversible Computation, and Maxwell's Demon