Separated business logic from GPrimitive control to GPrimitiveModel and bound the image properly. Renamed gate images for easier programmatic access. To do: Make GateType settable from XAML property.
WOOOO added a DependencyProperty to GPrimitive to allow changes to the gate's functionality and appearance
Updated image assets, implemented canvas functionality, and added first attempt at manipulation code for GPrimitive