Boundary Element Methods for Engineers and Scientists: An Introductory Course with Advanced Topics