Added assets lib and tests

- Assests is the access point for assest
- An asset is either a file location or http link