Initial checkin, removed IC2 support because the API is in a bizarre state and I don't want to mess with it.