The CAStle Computer Algebra System