In this manual we have described a new approach to simulator construction that leverages virtual machines. We introduced JiST, a new Java-based simulation framework that executes discrete event simulations both efficiently and transparently by embedding simulation time semantics directly into the Java execution model. Beyond the fundamental simulation time extensions to the Java object model and execution semantics, we also introduced concepts such as timeless objects, proxy entities, scripting, blocking events and simulation time concurrency. We described the JiST API in detail, briefly showed that JiST performs efficiently and enumerated the many other benefits inherent to this approach to simulator construction.