Allow construction of a BooleanCircuit using a Scanner

Added additional constructor to BooleanCircuit which takes a Scanner instead of a File.
This allows users to load their circuit definitions from locations other than the
local filesystem.